私のJavaアプリケーションでは、似ているかどうかに関係なく、2つのリストの要素を比較する必要があります。
要するに、以下のように宣言された2つのリストがあるとします。
List<String> a = new ArrayList<String>();
a.add("one");
a.add("three");
a.add("two");
Collections.sort(a);
List<String> a1 = new ArrayList<String>();
a1.add("ONE");
a1.add("two");
a1.add("THREE");
Collections.sort(a);
等式の条件を記述した場合、リストの要素の一部が次のように異なる場合に失敗します
if(a.equals(a1)){
System.out.println("equal");
} else{
System.out.println("not equal");
}
「等しくない」という結果が表示されます
では、リスト要素をJava言語でのみ大文字と小文字を区別しないようにする方法を教えてください。
感謝と敬意
代わりに、大文字と小文字を区別しないコンパレータでSortedSetを使用しないのはなぜですか?String.CASE_INSENSITIVE_ORDERコンパレータ
あなたのコードは
Set<String> a = new TreeSet<String>(String.CASE_INSENSITIVE_ORDER);
a.add("one");
a.add("three");
a.add("two");
Set<String> a1 = new TreeSet<String>(String.CASE_INSENSITIVE_ORDER);
a1.add("ONE");
a1.add("two");
a1.add("THREE");
そしてあなたの平等条件は問題なく機能するはずです
コメントに従って編集を編集しました。修正してくださった皆さんに感謝します。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加