java 是否提供内置的静态 String.Compare 方法?

2022-09-03 14:26:42

在比较字符串时,我宁愿不依赖实例方法,以免调用该方法的字符串恰好为空。在.NET中,我只使用静态的String.Compare(string,string,bool)方法。Java是否提供类似的内置“null-safe”字符串比较实用程序,还是我必须实现自己的?


答案 1

不可以,JDK 不包含此类实用程序。但是,有几个外部库可以做到这一点。例如,提供空值安全和 .番石榴也有类似的实用程序。org.apache.commons.lang.StringUtilsequals(String, String)equalsIgnoreCase(String, String)


答案 2

没有。Apache CommonsStringUtils.equals()就是这样做的:

public static boolean equals(String str1, String str2) {
    return str1 == null ? str2 == null : str1.equals(str2);
}