Java简单实现计算器功能
要求
写一个能够实现加减乘除,可以循环接收数据的简易计算器
初版
package method;
import java.util.Scanner;
public class CalculatorDemo {
public static void main(String[] args) {
Scanner firstNumber = new Scanner(System.in);
System.out.println("请输入第一个数字:");
double number01 = firstNumber.nextDouble();
Scanner alg = new Scanner(System.in);
System.out.println("请输入要进行的算术操作:");
String alg01 = alg.nextLine();
Scanner secondNumber = new Scanner(System.in);
System.out.println("请输入第二个数字:");
double number02 = secondNumber.nextDouble();
switch (alg01) {
case "+":
System.out.println(
add(number01, number02));
return;
case "-":
System.out.println(
sub(number01, number02));
return;
case "*":
System.out.println(
mul(number01, number02));
return;
case "/":
System.out.println(
div(number01, number02));
return;
}
}
//加法
public static double add(double a, double b) {
return a + b;
}
//减法
public static double sub(double a, double b) {
return a - b;
}
//乘法
public static double mul(double a, double b) {
return a * b;
}
//除法
public static double div(double a, double b) {
return a / b;
}
}
优化版
package method;
import java.util.Scanner;
public class CalculatorDemo01 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入要计算的内容,以Enter键分隔");
while (scanner.hasNextDouble()) {
double number01 = scanner.nextDouble();
String alg = scanner.next();
double number02 = scanner.nextDouble();
switch (alg) {
case "+":
System.out.println(add(number01, number02));
break;
case "-":
System.out.println(sub(number01, number02));
break;
case "*":
System.out.println(mul(number01, number02));
break;
case "/":
System.out.println(div(number01, number02));
break;
default:
System.out.println("输入不正确!");
break;
}
System.out.println("=================");
System.out.println("输入数字及计算符继续");
System.out.println("输入其他按键结束");
}
}
//加法
public static double add(double a, double b) {
return a + b;
}
//减法
public static double sub(double a, double b) {
return a - b;
}
//乘法
public static double mul(double a, double b) {
return a * b;
}
//除法
public static double div(double a, double b) {
return a / b;
}
}

浙公网安备 33010602011771号