java技术专栏

java接口类

2019-07-09  本文已影响0人  huxt

1.Collection接口

2.ArrayList

alllist

3.LinkedList

LinkedList

4.set和排序

hastset treeset

相同点:单例集合,数据不可重复

不同点1:底层使用的储存数据结构不同:

1,Hashset底层使用的是HashMap哈希表结构储存

2,而Treeset底层用的是TreeMap树结构储存。

不同点2:储存的数据保存唯一方式不用。

1,Hashset是通过复写hashCode()方法和equals()方法来保证的。

2,而Treeset是通过Compareable接口的compareto方法来保证的。

不同点3:

hashset无序   Treeset有序

储存原理:

hashset:底层数据结构是哈希表,本质就是哈希值储存。通过判断元素的hashcode方法和equals方法来保证元素的唯一性。当哈希值不同时就直接进行储存。

如果相同,会判断一次equals方式是否返回为true ,如果是true 则视为用的同一个元素,不用再储存。如果是false,这俄格相同哈希值不同内容的元素会放在同一个桶里(

当哈希表中有一个桶结构,每一个捅都有一个哈希值)

Treeset:底层数据结构式一个二叉树,可以对set集合中的元素进行排序,这种结构,可以提高排序性能。根据比较方法的返回值决定的,只要返回的是0,就代表元素重复

HashSet TreeSet SortedSet

5.iterator

iterator listIterator

6.map接口

HashMap HashMap的应用 TreeMap

3.两种常规Map性能

HashMap:适用于在Map中插入、删除和定位元素。

Treemap:适用于按自然顺序或自定义顺序遍历键(key)。

4.总结

HashMap通常比TreeMap快一点(树和哈希表的数据结构使然),建议多使用HashMap,在需要排序的Map时候才用TreeMap。

保存类注意点

map使用iterator必须实现Entry接口

map使用iterator注意点

7.Collections

上一篇 下一篇

猜你喜欢

热点阅读