This question already has answers here:
StringUtils.isBlank() vs String.isEmpty()
(11个答案)
4年前关闭。
我使用以下代码检查时间:
StringUtils.isBlank()方法比简单的String.isEmpty()方法花费3毫秒的时间。我们应该使用哪种方法?
检查字符串是否为空格,空(“”)或null。
StringUtils.isBlank()
当且仅当length()为0时,才返回true。
isEmpty()
因此,如果想要高级的东西(例如,如果string为null则不会抛出NPE),请忽略空字符串(因此auto trim),然后使用
另一方面,正如您所展示的那样,性能差异很容易成为
根据您的选择。
(11个答案)
4年前关闭。
我使用以下代码检查时间:
public static void main(String[] args) throws Exception {
String foo = "foo";
long start=System.currentTimeMillis();
if (StringUtils.isBlank(foo));
long end=System.currentTimeMillis();
System.out.println("isBlank="+(end-start));
start=System.currentTimeMillis();
if (foo!=null && !foo.isEmpty());
end=System.currentTimeMillis();
System.out.println("Sec="+(end-start));
}
StringUtils.isBlank()方法比简单的String.isEmpty()方法花费3毫秒的时间。我们应该使用哪种方法?
最佳答案
StringUtils.isBlank(foo));
检查字符串是否为空格,空(“”)或null。
StringUtils.isBlank()
foo.isEmpty()
当且仅当length()为0时,才返回true。
isEmpty()
因此,如果想要高级的东西(例如,如果string为null则不会抛出NPE),请忽略空字符串(因此auto trim),然后使用
StringUtils.isBlank(foo));
另一方面,正如您所展示的那样,性能差异很容易成为
isEmpty()
的原因,请看一下长度。根据您的选择。
10-06 02:50