我的计算器代码有什么问题

时间:2014-09-14 18:08:08

标签: java calculator

包装计算器; import java.util。*;

公共班级计算器{

public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    System.out.println("Calculator");

    System.out.println("Enter a number");
    double firstNumber = in.nextDouble();

    System.out.println("Enter another number");
    double secondNumber = in.nextDouble();

    System.out.println("Enter the letter for 'm'ultiply 's'ubtract 'a'dd or 'd'ivide");

    String wantedProcess = in.nextLine();       

    String multiply = "m";

    String subtract = "s";

    String add = "a";

    String divide = "d";


    if(wantedProcess.equals(multiply))
    {
        double product = firstNumber * secondNumber;
        System.out.println("=" + product);
    }



}

} 所以这是我正在制作的计算器,但是在我输入两个数字后,我不能输入m s a或d。我做错了什么?

2 个答案:

答案 0 :(得分:0)

将此if(wantedProcess.equals(multiply)更改为if(wantedProcess.equals(multiply))

你错过了)

编辑:然后 您需要再次创建一个新的Scanner对象

   Scanner inF = new Scanner(System.in);
   String wantedProcess = inF.nextLine();

答案 1 :(得分:0)

if(wantedProcess.equals(multiply)) 

你错过了最后的第二个支撑。现在看看:如果输入“m”表示乘法,然后将字符串“m”与字符串“Multiply”进行比较,您认为它们是否相等?仅比较第一个字母,例如,使用String.charAt()方法。

更重要的是,我猜你最好不要使用Scanner的next()方法,而不是nextLine()。在这里查看他们的文档:http://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html#nextLine()