Java 菜鸟教程

Java 流程控制

Java 数组

Java 面向对象(I)

Java 面向对象(II)

Java 面向对象(III)

Java 异常处理

Java 列表(List)

Java Queue(队列)

Java Map集合

Java Set集合

Java 输入输出(I/O)

Java Reader/Writer

Java 其他主题

Java String compareTo() 使用方法及示例

Java String(字符串) 方法

Java String compareTo()方法按字典顺序比较两个字符串(按字典顺序)。比较是基于字符串中每个字符的Unicode值。

compareTo()方法的语法为:

string.compareTo(String str)

compareTo()参数

compareTo()方法采用单个参数。

  • str - 要比较的字符串

compareTo()返回值

  • 如果字符串相等,则返回0

  • 如果字符串按字典顺序位于参数str之前,则返回负整数

  • 如果字符串按字典顺序位于参数str之前,则返回正整数

示例:Java字符串compareTo()

class Main {
    public static void main(String[] args) {
        String str1 = "Learn Java";
        String str2 = "Learn Java";
        String str3 = "Learn Kolin";
        int result;

        //比较str1和str2
        result = str1.compareTo(str2);
        System.out.println(result); // 0

        //比较str1和str3
        result = str1.compareTo(str3);
        System.out.println(result); // -1

        //比较str3和str1
        result = str3.compareTo(str1);
        System.out.println(result); // 1
    }
}

这里,

  • str1和str2相等。因此,str1.compareTo(str2) 返回0。

  • 按字典顺序,str1在str3之前。 因此,str1.compareTo(str3)返回负值,而str3.compareTo(str1)返回正值。

示例2:检查两个字符串是否相等

class Main {
    public static void main(String[] args) {
        String str1 = "Learn Python";
        String str2 = "Learn Java";
        
        //如果str1和str2相等,则结果为0
        if (str1.compareTo(str2) == 0) {
            System.out.println("str1和str2相等");
        }
        else {
            System.out.println("str1和str2不相等");
        }
    }
}

输出结果

str1和str2不相等

compareTo()方法区分字母大小写(大写和小写)。

示例3:compareTo()含有大小写字母

class Main {
    public static void main(String[] args) {
        String str1 = "Learn Java";
        String str2 = "learn Java";
        int result;

        //比较str1和str2
        result = str1.compareTo(str2);
        System.out.println(result); // -32
    }
}

当"Learn Java" 与 "learn Java"进行比较时,我们不会得到0。这是因为compareTo()会区分字母的大小写。

Java String(字符串) 方法