Integer.toString 変換に問題があります。このコードは「ololo」を出力します。なんで?また、整数を文字列に変換するにはどうすればよいですか?
String str1= "1";
String str2=Integer.toString(1);
if (str1!=str2)Log.d("myLogs","ololo");
オブジェクト参照を比較するため、 nor演算子ではなく、メソッドString
を使用して s を比較する必要があります。equals
==
!=
String
if (!str1.equals(str2)) {
Log.d("myLogs","ololo");
}
を使用すると、JVM プールにないInteger#toString
新しいものを作成しているため、説明されているエラーが発生することに注意してください。String
String
文字列比較は equals で行う必要があります。
if (!str1.equals(str2))...
使用!=
すると、参照の等価性(不等式)が得られます
String.valueOf(1);
整数を文字列に変更し てみてください。
代わりに使用!str1.equals(str2)
します。
文字列に==
orを使用しないでください!=