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