nullという文字列

以前海外のnullさんという方が、ユーザー登録されなくて悲しいことになったというようなニュースを見て、nullという文字列がバリデートされる条件を知りたかったので簡単に実験しました。

class Nulltest {
    public static void main(String args[]){
        String str = "null";

        if (str == null){
            System.out.println("1");
            } 

        if ("null".epuals(str)){
            System.out.println("2");
            } 

        if (str == "null"){
            System.out.println("3");
            }

}



この場合2と3が出力されます。 つまりJavaの場合、バリデートの条件に"null".epuals(str)str == "null"を設定することでnullさんが弾かれてしまうということがわかりました。