这两种方法有什么区别?
public boolean nameControl(String str)
{
if (str.trim().isEmpty()) return false;
if (str.trim().length() == 0) return false;
return true;
}
我需要找出str
应该至少有一个字符。
从Javadoc:
是空的
公共布尔 isEmpty()
当且仅当 length() 为 0 时返回 true。
isEmpty()
从Java 6开始length == 0
工作,从 Java 1.2+ 或可能更旧的版本开始工作。
如果你注意到,方法的实现
public static boolean isEmpty(String str)
为了支持 Java 5.0+,org.apache.commons.lang.StringUtils
使用Apache Commons Lang的类。str.length() == 0
幸运的是,这已经记录在案:
IsEmpty(): http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#isEmpty()
长度(): http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#length()
如果您需要检测一个字符串是否至少有一个(非空白)字符,我会尝试:
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;
}
想对此进行更新:
我观察到字符串是否有换行符(\n 或 \r),时间长度 fun 给你的不是零值,而是 isEmpty fun 突出,值为 true,这是预期的。