1

私はプロのプログラマーではありません。私はまだ学習中なので、私のコードは今のところ少し基本的です。

Scanner UserInput = new Scanner(System.in);
String UserChoose = UserInput.next();
if (UserChoose=="Quit"){

if ステートメントに何かが欠けていると推測しましたが、それが何かわかりません。誰かが私に欠けているものを教えてもらえますか? 運が悪いので、1時間オンラインで検索しています。

4

3 に答える 3

0
if (UserChoose.equals("Quit")){

Java では、デフォルトの == 演算子は、両方が同じオブジェクトであるかどうかを比較し、コンテンツが同じであっても、オブジェクト参照が同じでない場合はそうではありません==

詳細な説明については、次のリンクを参照してください: http://blog.enrii.com/2006/03/15/java-string-equality-common-mistake/

于 2013-10-20T16:22:59.617 に答える
0

Java でオブジェクトを比較するには、「==」演算子の代わりに .equals() メソッドを使用します

if (UserChoose=="Quit"){と 置き換えます if (UserChoose.equals("Quit")){

于 2013-10-20T16:23:10.920 に答える
0

よくある間違い: UserChoose.equals("Quit") を使用して文字列を比較します。String はオブジェクトであるため、 == を使用すると、メモリ位置を 2 つの文字列または常に false となるものと比較する可能性があります。

于 2013-10-20T16:24:40.187 に答える