要检查一个字符串中是否有一些值,我们可以这样做:
string.length() != 0
或者
string.length() > 0
(java中字符串长度不能为负)
那么哪种是更好的编程风格来检查呢?
还有哪个更快?
为什么不使用该String#isEmpty()
方法。它就是为了这个确切的目的。
PS:如果字符串包含space
,它不会是一个空字符串。在这种情况下,您需要trim
String,然后再检查isEmpty
.
我会StringUtils.isBlank("String")
从 Apache Commons Lang 使用。如果字符串为空或仅包含 blanc,这很容易并返回 true。
很有可能使用>
或!=
将花费完全相同的时间进行测试。如果性能有差异,那么机会是:
我的建议是专注于使您的应用程序工作,使其可靠并使其可维护。对于绝大多数应用程序来说,即使考虑这个级别的性能也可能是在浪费您的时间……Java 或其他应用程序。
我同意@RJ 关于 using 的建议String.isEmpty()
,并将其留给 Java 实现者来有效地实现此操作。