循环:while和切换基本计算器java

时间:2016-04-17 14:56:39

标签: java

我是一个begginer ^ _ ^我试图让计算器作为我的第一个java程序..这个计算器循环整个过程,直到你选择退出,我的问题是我选择退出它仍然要求num1和num2我想要它立即退出。

import java.io.Console;
public class Calc {
    public static void main (String[] args) {
        Console console = System.console();
        loop: while(true) {
        String operator = console.readLine("Enter Operation or Quit: ");
        String num1 = console.readLine("Enter num1: ");
        String num2 = console.readLine("Enter num2: ");
        int x = Integer.parseInt(num1);
        int y = Integer.parseInt(num2);
        int sum = add(x,y);
        int sub = minus(x,y);
        int mul = product(x,y);
        int div = divide(x,y);

        switch(operator) {
            case "addition":
            System.out.println(sum);
            break;
            case "subtraction":
            System.out.println(sub);
            break;
            case "multiplication":
            System.out.println(mul);
            break;
            case "division":
            System.out.println(div);
            break;
            case "quit":
            System.exit(0);
            break loop;
            default:
            System.out.println("Out of topic");
            }
        }

        }
    public static int add(int x, int y) {
        return x+y;
    }
    public static int minus(int x, int y) {
        return x-y;
    }
    public static int product(int x, int y) {
        return x*y;
    }
    public static int divide (int x, int y) {
        return x/y;
    }

}

1 个答案:

答案 0 :(得分:2)

  

即使我选择退出它仍然要求num1和num2我希望它立即退出

在这种情况下,检查选项是否在要求接下来的两个值之前退出。

String operator = console.readLine("Enter Operation or Quit: ");
if ("quit".equals(operator))
   return;
String num1 = console.readLine("Enter num1: ");
顺便说一句,除非表达方式模糊,否则没有太多的方法可以让方法比它包装的表达式更长更复杂。您可以假设+的含义并不模糊。