简易计算器实现:while循环+switch语句
2024-08-30 20:57:55
个人练习:
写一个计算器,要求实现加减乘除功能,并且能循环接收新的数据,通过用户交互实现(即Scanner对象)
用到了 while循环 switch语句,实现了数据的循环输入并计算!!!!妙啊!!!!
import java.util.Scanner;
public class Calculator{
public static void main(String[] args) {
//创建对象用来调用对象里的方法
Calculator calculator = new Calculator();
//调用computer方法
calculator.computer();
}
//第一步:加减乘除四个方法(因为要循环计算,每次传入一个数字,所以参数列表应该只有一个参数)
//加法
public static double add(double a){
System.out.println("请输入一个数:");
Scanner scanner3 = new Scanner(System.in);
double b = scanner3.nextDouble();
return a+b;
}
public static double subtract(double a){
System.out.println("请输入一个数:");
Scanner scanner3 = new Scanner(System.in);
double b = scanner3.nextDouble();
return a-b;
}
public static double multiply(double a){
System.out.println("请输入一个数:");
Scanner scanner3 = new Scanner(System.in);
double b = scanner3.nextDouble();
return a*b;
}
public static double divide(double a){
System.out.println("请输入一个数:");
Scanner scanner3 = new Scanner(System.in);
double b = scanner3.nextDouble();
return a/b;
}
//第二步:完成循环输入数据的功能(while(true)+switch),必须创建一个方法完成这一步
public void computer(){
System.out.println("请输入一个数:");
Scanner scanner1 = new Scanner(System.in);
double a = scanner1.nextDouble();
while (true){
Scanner scanner2 = new Scanner(System.in);
System.out.println("你可以输入的操作有:加(+)减(-)乘(*)除(/)清零(小写的c)结束(小写的end)--->");
String str = scanner2.nextLine();
switch (str){
case "+":
a = add(a);
System.out.println("="+a);
break;
case "-":
a = subtract(a);
System.out.println("="+a);
break;
case "*":
a = multiply(a);
System.out.println("="+a);
break;
case "/":
if (a == 0){
System.out.println("除法分子不能为零,请重新输入:");
break;
}
a = divide(a);
System.out.println("="+a);
break;
case "c":
computer();
break;
case "end":
System.exit(-1);
break;
default:
System.out.println("输入的字符有误!");
}
}
}
}
最新文章
- js赋值运算的理解
- Oracle补习班第三天
- Core Foundation框架
- kafka常用操作命令
- 20145305 《Java程序设计》第8周学习总结
- WCF服务中,[DataMember]属性标记的属性一定要有set访问器
- Mysql自增字段
- OI中神奇的神器fillchar
- CentOS7 列出服务和对应端口
- 常用的四种CSS样式表格
- 再探java基础——零碎基础知识整理
- java.nio分析软件包(三)---Charset理解力
- Sping4之注入参数
- Java JDK与JRE
- ubuntu 14.04 上配置vlc组播源
- C# 无法识别的属性“targetFramework”。请注意属性名称区分大小写。错误解决办法
- [转]bootstrap table本地数据使用方法
- VS2010/MFC编程入门之五十(图形图像:GDI对象之画笔CPen)
- “无后端”的web应用开发模式
- 【cocos2d-x 仙凡奇缘-网游研发(1) 登录&;注册】