JAVA容器库Collection与Map

JAVA容器类类库用途“保存对象”,并划分为两个大的不用的概念。

1)Collection  一个独立元素的序列,这些元素都服从一条或多条规则。

                       List必须按照插入的顺序保存元素;(以特定的顺序保存一组元素),在Collection的基础上可以在List的中间插入                         和删除元素。

                       contains()方法确定某个对象是否在列表中。(containsAll()方法)

                       remove()方法移除一个对象。

                       list.indexOf(元素) 来发现该对象在List中所处位置的索引编号

                      在List中间插入元素是可行的,add(索引号,元素)方法

                       subList()方法允许从较大的列表中创建出片段

                       list.retainAll(list2)方法,保留同时在两个list中的元素。

                       list.toArray()转换为数组

                      数组和list都是排好序的容器,但list能够自动扩充容量

                              ArrayList   善于随机访问元素,但在List的中间插入和移除元素比较慢。

                              LinkedList  快速的在List中间插入和移除元素,但在随机访问元素方面相对较慢。

                      Set不能有重复的元素;

                              HashSet   最快的获取元素方式

                             TreeSet  按比较结果升序保存存储对象

                             LinkedHashSet  按照被添加的顺序保存对象

                      Queue按照排队规则来确定对象产生的顺序(只允许在容器的一端插入对象,另一端删除对象)

                             队列和栈的行为有LinkedList提供支持

2)Map   一组成对的“键值对”对象,允许使用键来查找值。

         HashMap  最快的查找技术,没有按照任何明显的顺序来保存元素

         TreeMap  按照比较结果升序保存键

         LinkedHashMap 按照插入顺序保存键,同时还保留了HashMap的查询速度

新程序中不应该使用过时的Vector、Hashtable、Stack

猜你喜欢

转载自blog.csdn.net/weixin_38266599/article/details/81234870