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碼錶