[Java] StringUtils.isEmpty と StringUtils.isBlank の違い

Tadashi Shigeoka ·  Fri, November 18, 2011

Java には isEmpty と isBlank という似たような処理をするメソッドがあるみたいで、違いを調べたのでご紹介します。

Java

結論から書くと、

  • isBlank: 半角/全角空白文字も true と判定する
  • isEmpty: 半角/全角空白文字は false と判定する

みたいです。

System.out.println("isBlank(null):" + StringUtils.isBlank(null));
System.out.println("isBlank(\\"\\"):" + StringUtils.isBlank(""));
System.out.println("isBlank(\\" \\"):" + StringUtils.isBlank(" "));
System.out.println("isBlank(\\" \\"):" + StringUtils.isBlank(" "));//全角文字の空白

System.out.println(“isEmpty(null):” + StringUtils.isEmpty(null)); System.out.println(“isEmpty(\”\”):” + StringUtils.isEmpty("")); System.out.println(“isEmpty(\” \”):” + StringUtils.isEmpty(” ”)); System.out.println(“isEmpty(\” \”):” + StringUtils.isEmpty(” ”));//全角文字の空白

実行結果

isBlank(null):true
isBlank(""):true
isBlank(" "):true
isBlank(" "):true

isEmpty(null):true
isEmpty(""):true
isEmpty(" "):false
isEmpty(" "):false

Jave の現場からは以上です。