私は初心者です。
私はjavawhileループを試しています。私はjavawhileループとifステートメントの両方の知識を持っていますが、これまでネストしたことはありません。最初にスクリプトを投稿してから、問題をお伝えします。
スクリプトは次のとおりです。
import java.util.Scanner;
class whileloop{
public static void main(String args[]){
Scanner scan = new Scanner(System.in);
System.out.println("This is a basic calculator.");
System.out.println("To exit, input exit when asked to input the method.");
System.out.println("----------------------------------------------");
while (true){
System.out.println("to add, input '+', to subtract, input '-', to divide, input '/', to multiply, input '*' and to exit, input 'exit.'");
System.out.println("----------------------------------------------------");
System.out.print("Please enter a method here:");
String method = scan.nextLine();
if (method == "exit"){
System.out.println("You chose to exit.");
break;
}
else if (method == "+"){
System.out.println("You chose to add.");
System.out.print("Please enter first number here:");
double fnum = scan.nextInt();
System.out.print("Please enter second number here:");
double snum = scan.nextInt();
double ans = fnum + snum;
System.out.print("The answer is");
System.out.println(ans);
}
}
}
}
まず第一に、私は今実験しているこのタイプのネスティングについての知識がないので、おそらくそれが私の方法があなたの人々には少し珍しいように見えるかもしれない理由です。
ここで問題となるのは、このコードを実行するたびに、無限のwhileループは完全に機能しますが、入力内容に関係なく常にifステートメントをスキップし、命令のループを再開することです。
これで私を助けてください。