equals 与 compareTo 在 Java 中有什么区别?
compareTo() 方法按字典序比较两个字符串。比较基于字符串中每个字符的 Unicode 值。该字符串对象表示的字符序列将按字典序与 arg 字符序列进行比较。
- 如果该字符串对象在字典序中的位置在参数字符串之前,结果将为负整型。
- 如果该字符串对象在字典序中的位置在参数字符串之后,结果将为正整型。
- 如果字符串相等,结果为零,当且仅当 equals(Object) 方法返回 true 时,compareTo 返回 0。
示例
public class StringDemo { public static void main(String[] args) { String str1 = "tutorials", str2 = "point"; // comparing str1 and str2 int retval = str1.compareTo(str2); // prints the return value of the comparison if (retval < 0) { System.out.println("str1 is greater than str2"); } else if (retval == 0) { System.out.println("str1 is equal to str2"); } else { System.out.println("str1 is less than str2"); } } }
输出
str1 is less than str2
广告