java基础----19-----List\ArrayList\LinkedList、Set\HashSet\LinkedHashSet

List:有序、索引、可以重复

List的特有方法:与索引相关的add\set\remove

迭代器的并发修改异常:在取元素的同时,继续往里面添加元素(下面包异常)

数组查询快,增删慢;链表查询慢,增删快

ArrayList:增删慢,查询快

LinkedList:增删快,查询慢

LinkedList的特有方法:addFirst addLast getFirst   getLast(不能多态调用)

Vector类:同步的,所以运行速度慢,已经被ArrayList取代,现代基本不用

Set接口特点:无索引,不可以重复元素,方法和Collections全完相同

HashSet

Set的两种取出方式

哈希表

字符串对象的哈希值hashCode方法

HashSet

哈希表的存储结构:先比较哈希值是否相同,相同比较equals方法,都相同挂下面桶的存储结构

HashSet存储Person类时,姓名和年龄相同看成同一个对象,重写Person类的hashCode和equals方法,(ide快捷键能给自动生成)

LinkedHashSet

面试题:HashCode协定

猜你喜欢

转载自blog.csdn.net/qq_34514046/article/details/81584902
今日推荐