关闭

Java™对Set接口的Tutorial

81人阅读 评论(0) 收藏 举报
分类:

Java™对Set接口的Tutorial

https://docs.oracle.com/javase/tutorial/collections/interfaces/set.html

常用Set实现:HashSet TreeSet LinkedHashSet

HashSet

用hash table储存元素,性能高,不保证元素顺序

TreeSet

使用红黑树储存元素,根据元素值排序,String按字典顺序,Integer按数值顺序,效率HashSet稍慢

LinkedHashSet

链表结构的HashSet,能够保证添加的顺序

Set可以用来干嘛,把Collection中重复的元素剔除,比如有个Collection c,

Collection<T> cWithoutDuplicate = new HashSet<T>(c);

//剔除重复元素且保持顺序
Collection<Type> noDups = new LinkedHashSet<Type>(c);

Set的集合操作:包含 交 并 差 亦或

s1.containsAll(s2) //返回boolean,是否包含

s1.addAll(s2)   //并

s1.retainAll(s2)    //交集

s1.removeAll(s2)    //差

以上操作都会在s1上操作,若要保留s1与s2需要复制一份再操作

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:42776次
    • 积分:1869
    • 等级:
    • 排名:千里之外
    • 原创:142篇
    • 转载:4篇
    • 译文:10篇
    • 评论:2条
    文章分类
    最新评论
  • JMockit Mockups API

    lzzzl: 确实不管修饰符,也就是MOCK的时候,MOCKUP里全部写成PUBLIC就行了,这样甚至可以MOCK...