compareTo

作者: MDZZ灭顶之灾12138 | 来源:发表于2019-04-09 16:40 被阅读0次
image.png

String类中是如何实现compareTo方法的

public int compareTo(String anotherString) {
        int len1 = value.length;
        int len2 = anotherString.value.length;
        int lim = Math.min(len1, len2);
        char v1[] = value;
        char v2[] = anotherString.value;
 
        int k = 0;
        while (k < lim) {
            char c1 = v1[k];
            char c2 = v2[k];
            if (c1 != c2) {
                return c1 - c2;
            }
            k++;
        }
        return len1 - len2;
}

首先取出两个字符串的长度,比较较小的长度内,两者是否相等。

      若不相等,则直接返回该位置字符的ASCII码相减后的值。

      若各位置都相等,则将两个字符串长度的差值返回。

按字典顺序此 String 对象位于参数字符串之前,则比较结果为一个负整数。如果按字典顺序此 String 对象位于参数字符串之后,则比较结果为一个正整数。如果这两个字符串相等,则结果为 0;compareTo 只在方法 equals(Object) 返回 true 时才返回 0。

相关文章

  • 理解String的compareTo()方法

    public int compareTo(String anotherString) compareTo()的返回...

  • compareTo

    String类中是如何实现compareTo方法的 首先取出两个字符串的长度,比较较小的长度内,两者是否相等。 按...

  • java day 5

    CompareTo()与Equlas()之间的区别。使用CompareTo()方法,那么这个类就要实现ICompa...

  • String的compareTo方法

    原创文章,转载请注明原文章地址,谢谢! compareTo方法 public int compareTo(Stri...

  • compareTo()/compare

    先说明一下其用途,这两个方法都是用来排序用的。见名也应知其义,与什么比较。 compareTo():String类...

  • compareTo()用法

    http://www.runoob.com/java/number-compareto.html

  • Effecttive-2(对于所有对象通用的方法)

    equals方法 clone方法 compareTo方法

  • 01_代码的灵活性

    Comparator排序与compareTo()的使用技巧

  • String-compareTo

    compareTo()的返回值是int,它是先比较对应字符的大小(ASCII码顺序) 1、如果字符串相等返回值0....

  • compareTo常见错误

    compareTo() 是 Comparable 接口中的方法。在实现 Comparable 方法时,不能使用“简...

网友评论

    本文标题:compareTo

    本文链接:https://www.haomeiwen.com/subject/ructpqtx.html