compareTo()的返回值是整型,它是先比較對應字符的大小(ASCII碼順序),
如果第一個字符和參數的第一個字符不等,結束比較,返回他們之間的差值。
如果第一個字符和參數的第一個字符相等,則以第二個字符和參數的第二個字符作比較,
以此類推,直至比較的字符或被比較的字符有一方全比較完,這時就比較字符的長度。
我們可以通過閱讀源碼加深對compareTo()的理解:
compareTo()方法
如果這個字符串是等參數字符串那么返回值0,如果這個字符串是按字典順序小於字符串參數那么返回小於0的值,如果此字符串是按字典順序大於字符串參數那么返回一個大於0的值
舉例:
String s1 = "hello";
String s2 = "hello";
String s3 = "abc";
String s4 = "xyz";
System.out.println(s1.compareTo(s2)); //0;
System.out.println(s1.compareTo(s3)); //7; h為104,a為97,差為7
System.out.println(s1.compareTo(s4)); //-16; h為104,x為120,差為-16
附:ASCII碼表