能夠循環計算,經過調用函數自己來實現從新計算java
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("輸入有誤"); } } } }