stringVariable.equals

ITProの”次のJavaコードはどう改良できる? ”
って問題を今日解いてみた。。。。
いやはや、難しい。String系のnullチェックならいつも

public class StringUtil {
    public static boolean isEmpty(String s){
          return s == null || s.equals("");
    }
}

っていう感じのUtilityを作りor再利用し、

public void stringVariableStateDisp() {
	if(StringUtil.isEmpty(stringVariable)){
		System.out.println("stringVariable >>nullもしくは空文字");
	} else {
		System.out.println("stringVariable >>"+stringVariable);
	}
}

てな感じで使っているから、パッとこのようなものを出されるとつい考えてしまう。
そして、考えた末、"何もないなら、nullだろ。"と適当に2を選択。
見事に。。。。。不正解!!!!!!!!!!!

答えは、3でしたorz.....

でも、なーんか、府に落ちない。
そのまま、たまったRSSを見ていくと、ちょうど、オレンジニュースにまちゅダイアリー:"".equals(stringVariable) は改悪だろうってエントリーが載っていて、府に落ちない部分が丁寧に解説してあり、すっきりしたと同時に素晴らしき分析だな〜と尊敬してしまった。。。。

"".equals(str)も一つの記法かもしれないけど、私も"まちゅダイアリー"の同意見で、"".equals(str)は使わないようにした方がいいと思う。
そして、自分自身このようなコードを量産してしまうことが(たまーに......本当にたまーに.......)あるので、なんでもないような処理にも考えながらコード書こ。と肝に銘じた(銘じきれたはず...)