-7

文字列「1」と文字列「7」を比較すると、どちらが大きいでしょうか。また、文字列「1」と文字列「Test」を比較すると、どちらが大きいでしょうか?

4

1 に答える 1

2

Java での文字列の比較は、文字ごとに行われます。各文字には、Unicode 文字テーブルのどこに表示されるかに基づいて特定のランキングがあります (この場合、英語なのでASCIIを使用できます)。

「1」は「T」と同様に「7」未満と見なされます。

呼び出すには(これを次の中に配置しmain()ます:

System.out.println("1".compareTo("7"));
System.out.println("1".compareTo("Test"));
System.out.println("1".compareToIgnoreCase("7"));
System.out.println("1".compareToIgnoreCase("Test"));

負の値の結果が得られます。これらは、比較対象の文字からの ASCII ポイントに関する距離です。 compareToIgnoreCase()小文字のASCII範囲内の値を比較するため、最後の値compareToIgnoreCase()が非常に低いのはこのためです.

于 2012-04-16T01:55:57.270 に答える