Java isEmpty()和零长度之间的差异
这两种方法有什么区别Java isEmpty()和零长度之间的差异,java,string,Java,String,这两种方法有什么区别 public boolean nameControl(String str) { if (str.trim().isEmpty()) return false; if (str.trim().length() == 0) return false; return true; } 我需要找出str应该至少有一个字符。它们之间没有真正的区别 Javadocs 当且仅当length()为0时返回true 从: 空空如也 公共布尔值为空() 当且仅当le
public boolean nameControl(String str)
{
if (str.trim().isEmpty()) return false;
if (str.trim().length() == 0) return false;
return true;
}
我需要找出
str
应该至少有一个字符。它们之间没有真正的区别
Javadocs
当且仅当length()为0时返回true
从:
空空如也
公共布尔值为空()
当且仅当length()为0时返回true
幸运的是,这已经被记录在案: IsEmpty(): 长度():
如果需要检测字符串是否至少有一个(非空白)字符,我会尝试:
public boolean nameControl(String str) {
if (str == null) return false;
else if (str.trim().length() == 0) return false;
return true;
}
如果只包含空格的字符串返回true,我将删除trim
,如下所示:
public boolean nameControl(String str) {
if (str == null) return false;
else if (str.length() == 0) return false;
return true;
}
适用于Java 6+
isEmpty()
自Java6起运行,length==0
自Java1.2+或可能更旧版本起运行
如果您注意到,该方法的
Apache Commons Lang(适用于Java 5+)
使用
str.length()==0来支持Java 5.0+。希望在此基础上更新:
我观察到字符串是否有换行符(\n或\r),此时
长度乐趣带给你的不是零值,而是我的绝对乐趣
值应为true
你试过了吗?你看过源代码了吗?你看过javadoc吗?@SotiriosDelimanolis它返回FalseEmpty()检查字符串的长度是否为0,看起来大约有5个字符的代码空间。如果你的主要问题是如何检查字符串是否为空,那么可能是重复的。你可能也对它感兴趣。根据定义,任何形式的空格都不是字符吗?根据最初使用trim的情况,我假设只包含空格的字符串应该返回false。我已经更新了答案,以反映这两种情况。
public static boolean isEmpty(String str)