Java String方法按字典顺序(字母顺序)compareTo()比较两个字符串。它返回一个正数、负数或零。
s1.compareTo(s2)
- 如果
s1 < s2,则返回负数。 - 如果
s1 > s2,则返回正数。 - 如果
s1 == s2,则返回 0。
1.“a”.compareTo(“c”),负整数
“a”按字典顺序在参数字符串“c”之前;它返回一个负整数。 简单来说,对于字典或字母顺序,“a”在“c”之前并返回一个负整数。
System.out.println("a".compareTo("b")); // -1
System.out.println("a".compareTo("c")); // -2
System.out.println("a".compareTo("d")); // -3
System.out.println("a".compareTo("e")); // -4
System.out.println("1".compareTo("2")); // -1
System.out.println("1".compareTo("3")); // -2
System.out.println("1".compareTo("4")); // -3
System.out.println("1".compareTo("5")); // -4
2.“c”.compareTo(“a”),正整数
“c”按字典顺序跟随参数字符串“a”;它返回正整数 2。
简而言之,对于字典或字母顺序,“c”在“a”之后并返回一个正整数。
System.out.println("b".compareTo("a")); // 1
System.out.println("c".compareTo("a")); // 2
System.out.println("d".compareTo("a")); // 3
System.out.println("e".compareTo("a")); // 4
System.out.println("2".compareTo("1")); // 1
System.out.println("3".compareTo("1")); // 2
System.out.println("4".compareTo("1")); // 3
System.out.println("5".compareTo("1")); // 4
3. “a”.compareTo(“a”), 零
如果字符串相等,则返回零或 0。
System.out.println("a".compareTo("a")); // 0
System.out.println("1".compareTo("1")); // 0
4.“a”.compareTo(“ab”),不同长度
对于不同长度的比较字符串,它的工作原理是一样的。
System.out.println("a".compareTo("ab")); // -1
System.out.println("a".compareTo("abc")); // -2
System.out.println("a".compareTo("abcd")); // -3
System.out.println("11".compareTo("112")); // -1
System.out.println("11".compareTo("1123")); // -2
System.out.println("11".compareTo("11234")); // -3
5. compareToIgnoreCase()
Java StringcompareToIgnoreCase()方法按字典顺序比较两个字符串,忽略大小写。
System.out.println("a".compareTo("A")); // 32
System.out.println("a".compareToIgnoreCase("A")); // 0
6. Java String compareTo() 例子
下面是一个完整的 Java StringcompareTo()示例。
StringCompareTo.java
package com.mkyong.string.compare;
public class StringCompareTo {
public static void main(String[] args) {
System.out.println("-Negative Number-");
System.out.println("a".compareTo("b")); // -1
System.out.println("a".compareTo("c")); // -2
System.out.println("a".compareTo("d")); // -3
System.out.println("a".compareTo("e")); // -4
System.out.println("1".compareTo("2")); // -1
System.out.println("1".compareTo("3")); // -2
System.out.println("1".compareTo("4")); // -3
System.out.println("1".compareTo("5")); // -4
System.out.println("-Positive Number-");
System.out.println("b".compareTo("a")); // 1
System.out.println("c".compareTo("a")); // 2
System.out.println("d".compareTo("a")); // 3
System.out.println("e".compareTo("a")); // 4
System.out.println("2".compareTo("1")); // 1
System.out.println("3".compareTo("1")); // 2
System.out.println("4".compareTo("1")); // 3
System.out.println("5".compareTo("1")); // 4
System.out.println("-Zero-");
System.out.println("a".compareTo("a")); // 0
System.out.println("1".compareTo("1")); // 0
System.out.println("-Vary Length-");
System.out.println("a".compareTo("ab")); // -1
System.out.println("a".compareTo("abc")); // -2
System.out.println("a".compareTo("abcd")); // -3
System.out.println("11".compareTo("112")); // -1
System.out.println("11".compareTo("1123")); // -2
System.out.println("11".compareTo("11234")); // -3
System.out.println("-compareToIgnoreCase-");
System.out.println("a".compareTo("A")); // 32
System.out.println("a".compareToIgnoreCase("A")); // 0
}
}
输出
终端
-Negative Number-
-1
-2
-3
-4
-1
-2
-3
-4
-Positive Number-
1
2
3
4
1
2
3
4
-Zero-
0
0
-Vary Length-
-1
-2
-3
-1
-2
-3
-compareToIgnoreCase-
32
0