私はまだJavaに慣れていません。ユーザーが多肢選択式クイズに答える必要があるプログラムを作成しようとしています。ユーザーは回答を入力し、これらの入力は配列に形成されます。次に、for ループを使用してユーザーの回答配列を正しい回答の配列と比較し、ユーザーが正しいか間違っているかを伝える予定です。
ただし、if ステートメントで 2 つの配列を適切に比較していないようです。プログラムを実行するたびに、else ステートメントに直接進みます。
私の推測では、スキャナー クラスは実際には値を格納していないのでしょうか?
誰でも助けることができますか?
以下のコードの一部:
//Above this section is just a collection of "System.out.println" statements that state questions and answers the user choose from.
int x;
String answers [] = {"a", "a", "b"};
//answers array has the correct answer
Scanner in = new Scanner(System.in);
String answerEntered [] = new String [5];
//user input will be in this arra
for(x=0 ; x<3 ; x++)
{
System.out.print((1+x)+". ");
answerEntered[x] = in.nextLine();
}
for( x=0; x<3; x++)
{
**if(answerEntered[x] == answers[x])
{
System.out.println("For Question "+(x+1)+", you are Correct!");
}**
//This if section does not seem to work. Every time i run the code it automatically goes to the else statement.
else
{
System.out.println("The correct answer for Question "+(x+1)+" is: "+answers[x]);
}
}