2012-04-16 22 views
-7

文字列 "1"と文字列 "7"を比較すると、どちらが大きいかがわかります。また、文字列 "1"を文字列 "Test"と比較すると、どちらが大きかったでしょうか?文字列の比較は "1" <"seven"

+9

あなたはそれを試したことがありますか? – geekosaur

+1

あなたが持っていることを忘れていました*コーヒー*今日? – Lion

+0

'<', '>'、 '> ='、および'<='はプリミティブ型にのみ適用されます。 – Jeffrey

答えて

2

Javaの文字列の比較は文字単位で行われます。各文字には、Unicode文字表のどこに表示されるかに基づいて特定のランク付けがあります(このケースでは、英語のためASCIIを使用できます)。

「1」は「7」未満であるとみなされ、「T」も考慮されます。

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()の値が非常に低い理由です。

+0

ありがとう、これは私が興味があったものです。 – Slowbro