实际开发中应该使用哪个集合:
集合的一些技巧:
1 需要唯一吗?
需要 set
需要制定顺序吗?
需要treeset
不需要 hashset
但是想要一个和储存一直的顺序(有序) linkedHashSet
不需要list
需要频繁增删吗?
需要 linkedlist
不需要 Arraylist
如何记住每一个容器的结构和所属体系呢? 看名字
List
Arraylist
Linkedlist
Set
Hashset
Treeset
后缀名就是该集合所属的体系
前缀名就是该集合的数据结构
看到arraylist 就要想到数据 就要想到查询快 有角标
看到linked 就要想到链表 想到增删快, 就要想到 add get remove frist last的方法
看到hash就要想到哈希表 就要想到唯一性 就要想到元素需要覆盖hashcode 方法和equals方法
看到tree 就要想到二叉树 想到排序 就要想到两个接口 comparable comparator
而且通常这些常用的集合容器都是不同步的 |
|