2017-07-18 80 views
-3

我正在製作一個純粹用於學習目的的基本計算器。 下面是代碼所討論的塊:Java如果語句終止而不運行

Scanner Operation = new Scanner(System.in); 
Scanner data = new Scanner(System.in); 
String add, sub, mul, div; 
double fnum, snum, answer; 

add = Operation.nextLine(); 
System.out.println(add); 

if (Operation.equals("add")) { 
    System.out.println("Enter the first number: "); 
    fnum = data.nextDouble(); 
    System.out.println("Enter second number: "); 
    snum = data.nextDouble(); 
    answer = fnum + snum; 
    System.out.println("Your answer is " + answer); 
} 

該程序要求兩個輸入和終止,而不運行if語句。

任何幫助將不勝感激。

+2

使用更好的變量名稱,錯誤將是不言而喻的。 – shmosel

+1

爲什麼使用兩個Scanner實例? –

+0

@Rishabh Maurya。謝謝你指出。我只是修正了這一點。 –

回答

6

Operation是你的Scanner,add是你讀到的String

if (Operation.equals("add")) { 

應該

if (add.equals("add")) { 

但說實話,你應該選擇更有意義的變量名。

+0

解決了這個問題,非常感謝。現在我正在嘗試在該程序中添加另一個操作,並且該代碼與我發佈的附加代碼非常相似。代碼可以得出正確的答案,但我必須輸入兩次「操作」,它給我一個錯誤。 –

+0

錯誤已解決,但我仍然需要多次輸入它。 –