java set 顺序

Python08

java set 顺序,第1张

set有多种,hashset,treeset和linkedhashset比较常见,hashset最常用。linkedhashset是有序的,hashset是无序的。linkedhashset是以链表形式存放数据的,hashset是用hash散列存放数据的。list也分好几种,主要有arraylist和linkedlist,都是有序的,其中arraylist类比数组,linkedlist类比链表。arraylist是线程不同步的,也就是说多个线程同时操作一个list那么List中存放数据的一致性就不能保证。vector是线程同步的,也就是说线程安全的。

因为在comparator里面,-1代表小于,0代表等于,1代表大于

你这样写的话,应该只是按照长度排序吧

在进行比较的时候需要返回-1或者0,如果不是就需要交换,

你写的o1代表前一个元素,o2代表后一个元素

也就代表前一个元素必须小于后一个元素,在这里也就是前一个比后一个短

如果你要从大到小,就改成o2-o1,也就是o2-o1需要返回-1,那么前面就比后面大了