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;
}
}
posted @   每年桃花开的时候  阅读(471)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示