Day44--练习--操作题(1)
题目:计算器程序
要求:
编写一个简单的计算器程序,该程序能够执行基本的算术运算,包括加法、减法、乘法和除法。程序应该从用户那里接收两个数字和一个运算符,然后输出计算结果。
输入:
- 第一个数字(double类型)
- 第二个数字(double类型)
- 运算符(char类型,可以是'+'、'-'、'*'或'/')
输出:
- 根据提供的运算符,输出两个数字的计算结果(double类型)
我写的代码:
package com.liu.exercise;
import java.util.Scanner;
public class Exercise {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
System.out.println("请输入第一个数字:");
double s = scanner.nextDouble();
System.out.println("请输入第二个数字:");
double v = scanner.nextDouble();
System.out.println("请输入接下来的操作:1.加(+);2.减(-);3.乘(*);4.除(/)");
int i = scanner.nextInt();
switch(i){
case 1:
System.out.println(s+"+"+v+"="+(s+v));
break;
case 2:
System.out.println(s+"-"+v+"="+(s-v));
break;
case 3:
System.out.println(s+"*"+v+"="+(s*v));
break;
case 4:
System.out.println(s+"/"+v+"="+(s/v));
break;
default:
System.out.println("请输入正确的数字!!!!");
}
}
}
解析:
你的代码总体上是正确的,但有一些地方可以改进和优化。以下是一些建议和改进:
- 资源管理:在使用完
Scanner
对象后,应该关闭它以释放资源。 - 除零检查:在进行除法操作时,应该检查除数是否为零,以避免运行时错误。
- 代码风格:可以改进代码的可读性和一致性。
以下是改进后的代码:
package com.liu.exercise;
import java.util.Scanner;
public class Exercise {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
try {
System.out.println("请输入第一个数字:");
double num1 = scanner.nextDouble();
System.out.println("请输入第二个数字:");
double num2 = scanner.nextDouble();
System.out.println("请输入接下来的操作:1.加(+);2.减(-);3.乘(*);4.除(/)");
int operation = scanner.nextInt();
switch (operation) {
case 1:
System.out.println(num1 + "+" + num2 + "=" + (num1 + num2));
break;
case 2:
System.out.println(num1 + "-" + num2 + "=" + (num1 - num2));
break;
case 3:
System.out.println(num1 + "*" + num2 + "=" + (num1 * num2));
break;
case 4:
if (num2 != 0) {
System.out.println(num1 + "/" + num2 + "=" + (num1 / num2));
} else {
System.out.println("错误:除数不能为零");
}
break;
default:
System.out.println("请输入正确的数字!!!!");
}
} finally {
scanner.close(); // 关闭Scanner对象
}
}
}
改进点解释:
- 资源管理:使用
try-finally
块来确保Scanner
对象在使用完后被关闭。 - 除零检查:在进行除法操作时,增加了对除数是否为零的检查。
- 变量命名:将变量
s
和v
改为更具描述性的num1
和num2
,以提高代码的可读性。
这样,你的代码不仅更加健壮,而且更易于理解和维护。
标签:num1,num2,--,操作题,System,Scanner,println,Day44,out From: https://www.cnblogs.com/xiaokunzhong/p/18597439