Java集合小结

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_22921049/article/details/77859860

学习Java知识过程中,集合总是记混,于是做个简单的总结;
集合类(存放的是对象的引用):
经常使用的Java集合类为Arrylist,HashSet,HashMap,HashTale.
位于Java集合框架最顶层的接口是java.util.Collectionjava.util.Map.
List,Set,StoreSet接口都继承自Collection,经常使用到的集合类LinkedList ,ArrayListHashSet,TreeSet等是这三个接口的实现类
接口SortedMap继承自Map接口.Map常用实现类是HashMap和TreeMap


Collection接口及其子类
Map接口及其子类

展开阅读全文

集合学习小结

06-14

这几天学习了Collection集合和Map集合中的部分内容,Collection集合之下分了若干子接口,我主要学习List和Set集合,在其下又分了几个类,我主要学习了ArrayList和LinkedList,在Set集合中我主要学习了HashSet和TreeSet.在Map集合中我主要学习TreeMap和HashMap.rnCollection:单列集合 Map:双列集合rnList:有序(怎么样存进去再怎么样取出来),可重复(可以多次存入同一元素) rnArrayList:底层数据结构为数组,查询快增删慢,线程不安全所以效率高rnLinkedList::底层数据结构为链表,查询慢增删快,线程不安全所以效率高rnVector:底层数据结构为数组,查询快增删慢,线程安全所以效率低rnSet:无序(存入和取出顺序没有联系),不可重复rnHashSet:底层数据结是哈希表,它主要依靠两个方法hashCode()和equals();首先判断元素的哈希值是否相同,如果相同,再调用equals方法,确定是否为同一元素。rnLinkedHashSet::底层数据结构由链表和哈希表组成,由链表保证元素有序(怎么样输入怎样取出),由哈希表保证元素唯一。rnTreeSet::底层数据结构是红黑树(一种自平衡的二叉树)。根据返回值是否为0来保证元素唯一,可通过两种方法实现元素排序:1、让元素所属的类实现Comparable接口2、让TreeSet集合接受一个Comparator的对象。rnMap集合:rn1、其底层数据结构可与上面分别进行对应rn2、Map集合的数据结构仅对键有效而与值无关rn3、Map集合中存储的是键值对形式的元素,键唯一,值可重复rnHashMaprnLinkedHashMaprnTreeMaprnrn如何选择我们需要的集合类型?根据实际情况rn是否是键值对类型?rn是:Map集合 键是否需要排序?rn是:TreeMaprn否:HashMaprn如果不确定则一般选用HashMap集合rn否:Collection集合 是否需要保证元素唯一?rn是:Set集合 元素是否需要排序?rn是:TreeSetrn否:HashSetrn如果不确定则一般选用HashSet集合rn否:List集合 增删多还是查询多?rn增删多:LinkedListrn查询多:ArrayListrn不确定就用ArrayListrn 论坛

没有更多推荐了,返回首页