1.Map接口下有几个子类,各自有什么特点? HashMap<K,V> 存储数据采用哈希表结构,元素的存取顺序不一致,想要保住键的唯一性,必须重写hashCode(),equals()方法 LinkedHashMap<K,V> 存储数据采用哈希表结构+链表结构 通过链表结构来保证存取顺序一致,通过哈希表结构可以保证的键的唯一、不重复,需要重写键的hashCode()方法、equals()方法。
2.目前为止,我们所学的遍历map集合有几种方式? 三种 普通for循环 迭代器 增强for循环
3.请用自己的语言描述你所了解的集合体系 Collection list set
有序的集合 无索引集合 可重复性 不可重复 有索引 ArrayList hashset 查询快.增删慢 无序 查询快:根据索引去查找元素 重写hashCode和equals方法保证不重复 增删慢:每次增删时要创建新的数组 linkedlist linkedhashset 查询慢,增删快 有序 查询慢:每次查询从头开始查找 重写hashCode和equals方法保证不重复 增删快,只需要记住下一个元素的地址,每次在地址值中增删 Vector 线程安全 Map HashMap 存储数据采用的哈希表结构,元素的存取顺序不能保证一致。由于要保证键的唯一、不重复,需要重写键的hashCode()方法、equals()方法。 linkedHashMap HashMap下有个子类LinkedHashMap,存储数据采用的哈希表结构+链表结构。通过链表结构可以保证元素的存取顺序一致;通过哈希表结构可以保证的键的唯一、不重复,需要重写键的hashCode()方法、equals()方法。
|