1

次のコードは、menuInput に 0 または 9 を使用すると正しく機能し、ループが再び繰り返されます。10 を使用すると、ループ条件が満たされ、終了します。compareToこのように使用すると、最初の値だけに見えると思いますか?menuInput を 99 にすると、ループが再び繰り返されます。初心者で何を交換したらいいのかわからないcompareTo。ティ!

do...

code

while (menuInput.compareTo("8") > 0 || menuInput.compareTo("1")<0);
4

2 に答える 2

11

文字列の compareTo は辞書式です。最初の文字、次に次の文字でアルファベット順に並べられているため、"1" < "2" ですが、"11" < "2" も同様です。数値比較を行いたい場合は、 を使用して整数に変換しますInteger.parseInt

于 2013-06-06T22:23:29.450 に答える
0

文字列を比較しています。数値を比較したい場合は、整数に変換する必要があります。

于 2013-06-06T22:24:13.663 に答える