collections.sort
默认按ASCII码排序,一位一位的比较,应该排了3次
第一次比较第一位全部是a,所以顺序没变
第二次第二位排序[a0, a1, a12, a11, a10, a2, a3, a4, a5, a6, a7, a8, a9]
第三次第三位排序[a0, a1, a10, a11, a12, a2, a3, a4, a5, a6, a7, a8, a9]
Comparator是个接口,可重写compare()及equals()这两个方法,用于比价功能;如果是null的话,就是使用元素的默认顺序,如a,b,c,d,e,f,g,就是a,b,c,d,e,f,g这样,当然数字也是这样的。
compare(a,b)方法:根据第一个参数小于、等于或大于第二个参数分别返回负整数、零或正整数。
equals(obj)方法:仅当指定的对象也是一个 Comparator,并且强行实施与此 Comparator 相同的排序时才返回 true。
collections.sort(list, new PriceComparator());的第二个参数返回一个int型的值,就相当于一个标志,告诉sort方法按什么顺序来对list进行排序。
相关阅读
请注明出处:http://blog.csdn.net/qq_23179075/article/details/78753136 Java中Collections.sort()的使用! 在日常开发中,很多时候