2016-04-03 20 views
0

次のif文がヒットしない理由を理解できません。ムービーとfilms.get(i).getTitle()が同じ文字列であることをログから検証しました:ArrayList(Java)を反復処理するのに問題がある

+0

文字列の内容を比較するには、String equalsメソッドを使用する必要があります。 == 2つの参照が両方ともヌルであるか、または両方が同じオブジェクトを指しているかどうかをテストします。 –

+0

文字列の比較にequalsを使用する –

+0

2つの文字列のために.equalsを使用する必要があることを、私は見逃してしまいました。 –

答えて

0

==プリミティブ以外のものは、2つのオブジェクトのメモリアドレスを比較します。文字列と他のオブジェクトを比較するには.equalsを使用してください。

です。

String str1 = "bla"; 
// Use String::new to make sure 'str1' and 'str2' don't reference the same literal 
String str2 = new String("bla"); 

System.out.println(str1 == str1); // true 
System.out.println(str1 == str2); // false 
System.out.println(str1.equals(str2)); // true 
関連する問題