简易计算器实现:while循环+switch语句
个人练习:
写一个计算器,要求实现加减乘除功能,并且能循环接收新的数据,通过用户交互实现(即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("输入的字符有误!");
}
}
}
}


简易计算器实现:while循环+switch语句的更多相关文章
- Go-函数高级使用-条件分支-包管理-for循环-switch语句-数组及切片-与或非逻辑符
目录 科普 python 注释 # 函数高级 if else if else 包管理 下载第三方包 比较热门的框架 for 循环 for 循环的几种写法 switch 语句 数组及数组切片 数组迭代 ...
- 包、mode模式、if-else语句、switch语句
目录 包 mode模式 if-else语句 循环 switch语句 包 //1 在同一个包下(文件夹下),包名必须一致 //2 以后,包名就是文件夹的名字 //3 同一个包下,同名函数只能有一个(in ...
- Java通过循环结构和switch实现简易计算器
Java通过循环结构和switch实现简易计算器 可以循环计算,通过调用函数本身来实现重新计算 package com.shenxiaoyu.method; import java.util.Scan ...
- JavaScript (If...Else和Switch和循环遍历) 语句以及常用消息框
If...Else 语句 JavaScript中if...else语句和Java中的语法和使用方法是一样的. 只是在JavaScript中要使用小写字母.使用大写的 IF 会出错! 至于if...el ...
- switch语句和for循环
switch语句: 1. switch 后面小括号中表达式的值必须是整型或字符型 2. case后面的值可以是常量数值,如:1.日:也可以是一个常量表达式,如:2+2:但 不能是变量或带有变量的表达式 ...
- 永久性for循环配合switch语句可以实现菜单功能
永久性for循环配合switch语句可以实现菜单功能总结:加入想要无条件地跳转到某条语句执行,用goto语句: 加入想要对某种条件进行判断,为真或为假分别执行不同的语句,用if语句 加入想要检测的条件 ...
- 第二部分 条件控制执行语句、循环语句、switch语句、跳转语句和其它语句
条件控制执行语句: if语句 if....else....语句 循环语句: while语句 do....while语句 for语句 switch语句: 跳转语句: break; continue; r ...
- switch语句以及三种循环语句的总结
1:switch语句(1)格式:switch(表达式) {case 值1:语句体1;break;case 值2:语句体2;break;...default:语句体n+1;break;} 格式解释说明: ...
- go语言之if语句和switch语句和循环语句
1.if语句 package main import ( "fmt" "io/ioutil" ) func main() { //流程控制 //使用常量定义一个 ...
随机推荐
- JAMstack (JavaScript + APIs + Markup)
JAMstack (JavaScript + APIs + Markup) The modern way to build Websites and Apps that delivers better ...
- holy shit StackOverflow
holy shit StackOverflow refs https://stackoverflow.com/users/5934465/xgqfrms?tab=questions xgqfrms 2 ...
- node.js & fs & file read & file write
node.js & fs & file read & file write https://nodejs.org/api/fs.html const fs = require( ...
- Android 开发 权限管理
Android 开发 权限管理 https://sspai.com/post/42779 $ adb shell pm list permissions -d -g https://zhuanlan. ...
- Masterboxan INC 下半年将聚焦超高净值和家族全权委托客户
"投资是一个没有终点的奋斗.我们不能简单的预测市场,而是应对市场做出正确的反应.这需要我们不断反思.总结.提升,找到自己的投资哲学,然后用一生的时间去坚守."Masterboxan ...
- Java HashMap源码分析(含散列表、红黑树、扰动函数等重点问题分析)
写在最前面 这个项目是从20年末就立好的 flag,经过几年的学习,回过头再去看很多知识点又有新的理解.所以趁着找实习的准备,结合以前的学习储备,创建一个主要针对应届生和初学者的 Java 开源知识项 ...
- 搭建SSH框架
以下为链接地址:https://www.2cto.com/kf/201606/518341.html
- RocketMQ基础概念剖析,并分析一下Producer的底层源码
由于篇幅原因,本次的源码分析只限于Producer侧的发送消息的核心逻辑,我会通过流程图.代码注释.文字讲解的方式来对源码进行解释,后续应该会专门开几篇文章来做源码分析. 这篇博客聊聊关于Rocket ...
- Java基本概念:内部类
一.简介 描述: 很多时候我们创建类的对象的时候并不需要使用很多次,每次只使用一次,这个时候我们就可以使用内部类了. 内部类不是在一个java源文件中编写两个平行的类,而是在一个类的内部再定义另外一个 ...
- 后端程序员之路 30、webapi测试工具的一点想法
有了webapi,对应的,也就要有各种语言的sdk,有时候,还要有一个好用的api测试工具.sdk和api测试工具在功能上有一些异同,有时候测试工具会直接基于sdk来制作. 它们通常包含: 1.htt ...