Java中的stringisNullOrEmpty?
这确实已经被问过,但谷歌没有find它 。 有没有,在任何标准的Java库(包括Apache /谷歌/ …),静态isNullOrEmpty()
方法的Strings
?
-
StringUtils.isEmpty(str)
或者StringUtils.isNotEmpty(str)
-
StringUtils.isBlank(str)
或者StringUtils.isNotBlank(str)
来自Apache commons-lang 。
empty
与blank
的区别在于:由空格组成的string只是blank
而不是empty
。
如果可能的话,我通常更喜欢使用apache-commons,而不是编写自己的实用方法,尽pipe对于这些简单的方法也是如此。
如果你正在做android开发,你可以使用:
TextUtils.isEmpty (CharSequence str)
在API级别1中添加如果string为null或0长度,则返回true。
来自Google Guava的 com.google.common.base.Strings.isNullOrEmpty(String string)
不,这就是为什么很多其他图书馆都有自己的副本:)
你可以添加一个
public static boolean isNullOrBlank(String param) { return param == null || param.trim().length() == 0; }
我有
public static boolean isSet(String param) { // doesn't ignore spaces, but does save an object creation. return param != null && param.length() != 0; }
要检查一个string是否有任何字符,即。 不为空或空格,检查StringUtils.hasText
– 方法(如果你使用Spring当然)
例:
StringUtils.hasText(null) == false StringUtils.hasText("") == false StringUtils.hasText(" ") == false StringUtils.hasText("12345") == true StringUtils.hasText(" 12345 ") == true
public static boolean isNull(String str) { return str == null ? true : false; } public static boolean isNullOrBlank(String param) { if (isNull(param) || param.trim().length() == 0) { return true; } return false; }
除了其他答案之外,我碰到了这个问题,因为我主要是C#程序员,但是试图保持Java的新鲜感。 我注意到,当我试图使用StringUtils
我的IDE(Eclipse)从com.mysql.jdbc.StringUtils
实际上有一个isNullOrEmpty(myStringObject)
方法导入它。
恩。
import com.mysql.jdbc.StringUtils;
StringUtils.isNullOrEmpty(host)
对于那些已经在你的项目中引用了MySQL连接器的人来说,只是另一种select,而不是其他的StringUtils
库。
对于新的项目,我已经开始让我写的每个类都扩展了相同的基类,在那里我可以放置Java这样令人恼火地缺失的所有实用程序方法,相当于集合(已经厌倦了编写列表!= null &&! list.isEmpty()),空等安全等于等。我仍然使用Apache Commons的实现,但这节省了less量的打字,我没有看到任何负面影响。
我已经看到这个方法在我曾经写过的项目中写过几次,但是我不得不说我自己从来没有写过这个方法,或者把它叫做…通常我发现null和empty是完全不同的条件,而且我有没有理由永远混淆他们。