なぜ無いJavaのStringの==比較をエラーとするモード
JavaでStringの比較==をエラーに
Javaでクラスインスタンスの==は同一インスタンスかどうかの比較であって、値の比較ではありません。
これはStringでも一緒で例えば
String strA="なんだかんだ";
//
if( strA=="なんだかんだ" ){ // こういう比較はできない
//....
}
この間違いは良く起こります。
これは利用者が悪いのではなくJavaの仕様が悪いのです。
==で文字列としての比較をしろとまでは言いませんが、せめて
Stringの==比較をエラーとするべき
です。
コンパイルオプションで-noStringCompareなどと指定するとエラーになるのでも構いません。
| 固定リンク


コメント