java排序细节问题
public class CollectionsDemo {
public static void main(String[] args) {
List<String> names = new ArrayList<String>();
names.add("Tom");
names.add("Andy");
names.add("Black");
names.add("John");
names.add("Bill");
Collections.sort(names);
System.out.println(names);
想问下各位 大大 为什么Collections.sort(names);是按照字母顺序排的 我查看了源代码 没看到用ASCII排
求教!!!
------解决方案--------------------
调用的是字符串的compareTo方法进行比较。字符串compareTo方法比较是通过字典序排的,你这个翻源代码不可能没有。
刚才查了一下源码
Collections.sort(names);转到Arrays.sort();
然后归并排序,里面用到了compareTo方法。