Java通过循环结构和switch实现简易计算器

可以循环计算,通过调用函数本身来实现重新计算

package com.shenxiaoyu.method;

import java.util.Scanner;

public class TestDemo {
public static void main(String[] args) {
TestDemo test= new TestDemo();
test.computer();
}
//加
public double add(double num1){
Scanner input3 = new Scanner(System.in);
System.out.println("输入一个数:");
double num2 = input3.nextDouble(); return (num1+num2);
}
//减
public double subtract(double num1){ Scanner input3 = new Scanner(System.in);
System.out.println("输入一个数:");
double num2 = input3.nextDouble(); return (num1-num2);
}
//乘
public double multiply(double num1){ Scanner input3 = new Scanner(System.in);
System.out.println("输入一个数:");
double num2 = input3.nextDouble(); return (num1*num2);
}
//除
public double divide(double num1){
Scanner input3 = new Scanner(System.in);
System.out.println("输入一个数:");
double num2 = input3.nextDouble(); return (num1/num2);
}
//实现计算器循环计算
public void computer(){
Scanner input1 = new Scanner(System.in);
TestDemo test= new TestDemo();
System.out.println("输入一个数:");
double a = input1.nextDouble();
while(true){
Scanner input2 = new Scanner(System.in);
System.out.println("请输入您的操作:(加(+)减(-)乘(-)除(/)E(重新计算)退出(Q)):");
String str = input2.nextLine();
char chr = str.toCharArray()[0];
switch(chr){
case '+':
a = test.add(a);
System.out.println("和:"+a);
break;
case '-':
a = test.subtract(a);
System.out.println("减:"+a);
break;
case '*':
a = test.multiply(a);
System.out.println("乘:"+a);
break;
case '/':
a = test.divide(a);
System.out.println("除:"+a);
break;
case 'Q':
System.exit(-1);
case 'E':
computer();
default:
System.out.println("输入有误");
}
}
}
}

Java通过循环结构和switch实现简易计算器的更多相关文章

  1. [java基础]循环结构2

    [java基础]循环结构2 写了几个循环结构练习~记录一下~~ 1:99乘法表 /** 文件路径:G:\JavaByHands\循环语句\ 文件名称:GameForFor.java 编写时间:2016 ...

  2. [Java基础]循环结构3

    [Java基础]循环结构3 break 与 continue 中断循环... /** 文件路径:G:\JavaByHands\循环语句\ 文件名称:BreakTest.java 编写时间:2016/6 ...

  3. [java基础]循环结构1

    [java基础]循环结构1 循环结构:for循环,while循环,do_while循环在,增强型for循环 /** 文件路径:G:\JavaByHands\循环语句\ 文件名称:WhileTest.j ...

  4. Java 7-Java 循环结构 - for, while 及 do…while

    Java 循环结构 - for, while 及 do...while 顺序结构的程序语句只能被执行一次.如果您想要同样的操作执行多次,,就需要使用循环结构. Java中有三种主要的循环结构: whi ...

  5. java入门---循环结构 - for, while 及 do...while&break&continue

        顺序结构的程序语句只能被执行一次.如果您想要同样的操作执行多次,,就需要使用循环结构.Java中有三种主要的循环结构: while 循环 do…while 循环 for 循环     在Jav ...

  6. Java分支循环结构

    一.Java分支结构 1.if语句:一个 if 语句包含一个布尔表达式和一条或多条语句. if 语句的用语法如下:  if(布尔表达式){ 如果布尔表达式为true将执行的语句  } public c ...

  7. Java基础循环结构

    int x=10; do { System.out.println("value of x:"+x); x++; } while(x<20); //do while循环 1 ...

  8. JAVA的循环结构进阶

    1.什么是二重循环:                        一个循环体内又包含另一个完整的循环结构                     语法:                       ...

  9. java三大循环结构

    用于处理需要重复执行的操作: 根据判断条件的成立与否,决定程序段落的执行次数,而这个程序段落我们称为循环体: while:事先不需要知道循环执行多少次: do  while:同上,只是至少要执行一次( ...

随机推荐

  1. Java阻塞队列四组API介绍

    Java阻塞队列四组API介绍 通过前面几篇文章的学习,我们已经知道了Java中的队列分为阻塞队列和非阻塞队列以及常用的七个阻塞队列.如下图: 本文来源:凯哥Java(kaigejava)讲解Java ...

  2. flutter在2019年会有怎样的表现?

    2019独角兽企业重金招聘Python工程师标准>>> Flutter的趋势 在移动端,受成本和效率的驱使,跨平台一站式开发慢慢成为一个趋势.从Hybird,RN,WEEX,Flut ...

  3. Nodejs的介绍

    Nodejs的介绍 Node.js的是建立在Chrome的JavaScript的运行时,可方便地构建快速,可扩展的网络应用程序的平台.Node.js使用事件驱动,非阻塞I/O模型,轻量.高效,可以完美 ...

  4. k8s namespace限制调研

    1.创建namespace gpu 2.增加限制 [root@tensorflow1 gpu-namespace]# cat compute-resources.yaml apiVersion: v1 ...

  5. 如何理解Java的值传递

    结论 为了加深印象,先把结论放在文章开头. ++Java中只有值传递++. 形参与实参 在理解Java的值传递 实参Argument 实际参数,主调用函数传递给调用函数的参数 形参Parameter ...

  6. caffe学习笔记(1)安装 - Ubuntu 15.04

    官方安装手册 备注:使用系统 - Ubuntu 15.04 64位操作系统(若系统位于虚拟机上,在安装CUDA后,Ubuntu将无法进入图形界面) /************************* ...

  7. HR问了我朋友什么是简单工厂模式,竟被质疑是否学过设计模式,是否是计算机专业?

    越是简单的东西,越是容易被忽略,我来带你们好复习一下! 简单工厂模式 简单工厂模式也被称为静态工厂模式;使用简单工厂模式可以将产品的"消费"和生产完全分开,客户端只需要知道自己需要 ...

  8. 数学--数论--POJ 1061青蛙的约会 (扩展欧几里得算法)

    青蛙的约会 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止.可是它们出发之前忘记了一件很重要的事情,既没有问 ...

  9. 曹工谈并发:Synchronized升级为重量级锁后,靠什么 API 来阻塞自己

    背景 因为想知道java中的关键字,对应的操作系统级别的api是啥,本来打算整理几个我知道的出来,但是,尴尬的是,我发现java里最重要的synchronized关键字,我就不知道它对应的api是什么 ...

  10. Fiddler手机端抓包环境设置与过滤(一)

    一.PC端Fiddler设置 1.安装https 证书 打开Fiddler->Tool->Fiddler Options->HTTPS tab,勾选上并Capture HTTPS C ...