Collections框架简介
来源:互联网 发布:lda模型 矩阵分解 编辑:程序博客网 时间:2024/06/06 18:00
Collections框架(有s)
一、Collections针对集合类的一个包装类,提供一系列静态方法用来实现集合的各种操作。不可实例化,服务于Collection
具体的方法如下:
l .sort方法。排序用。Collections.sort(list, new PriceComparator());的第二个参数返回一个int型的值,就相当于一个标志,告诉sort方法按什么顺序来对list进行排序。我们需要自己定义“PriceComparator”类
二、Collection(没s)
Set,List,Map三个接口:
1. Set。数学意义上的集合,集合中的元素不能重复。该接口有两个实现类:
1) HashSet
2) TreeSet。实现了SortedSet接口,因此其中的元素是有序的
2. List。被称为“有序”的Collection,但并不是说其中的元素经过了排序,指的是按照对象进入的顺序保存对象,所以可以对列表中每个元素的插入和删除进行精准地控制。同时也允许元素重复。
三个基本实现类。都是对象数组,而且是可伸缩数组
这些类放在java.util文件中
1) LinkedList
a. 采用双向列表,插入数据效率快。但是线程不安全
2) ArrayList
a. 它和Vector一样,在存储的时候会在内存中开辟一片连续的空间进行存储,因此其中的元素是有序的,检索的速度特别快,但是要增加或者删除的话要移动所有的元素,因此改动的速度很慢。
b. 他们都有一个初始化的容量的大小,每次存储达到极限后都要扩充容量,Vector默认扩充为原来的2倍(可设置大小),而ArrayList默认扩充为原来的1.5倍(不可设置大小)
3) Vector
3. Map
对Map集合进行遍历的四种方法:
1) 遍历keySet.
2) 使用Map.entry.Map类提供了一个称为entrySet()的方法,这个方法返回一个Map.Entry实例化后的对象集。接着,Map.Entry类提供了一个getKey()方法和一个getValue()方法。举例如下:
Set entries = map.entrySet( );//返回一个Map.Entry对象集合if(entries != null) { Iterator iterator = entries.iterator( );//对这个Set集合进行遍历,返回一个迭代对象 while(iterator.hasNext( )) { Map.Entry entry =iterator.next( ); Object key = entry.getKey( );//得到键值 Object value = entry.getValue();//得到相应的值 }}
3) 通过Map.values()遍历所有的value,但不能遍历key
for (String v : map.values()) { System.out.println("value= " + v); }
4) 在2)的基础之上。二使用了迭代器,是对迭代对象进行遍历,如果追求更高效率,则直接 对map.entrySet()进行遍历
for (Map.Entry<String, String> entry : map.entrySet()) { System.out.println("key= " + entry.getKey() + " and value= "+entry.getValue()); }
四个具体(基本)实现类
1) HashMap.基于散列表实现,采用键的HashCode(也就是key)可以进行快速查询。可以有至多一个空值(HashTable不允许),线程不同步
l 如果需要输出的顺序和输入的顺序一样,可以用HashMap的子类:LinkedHashMap
2) HashTable.线程同步,安全性更高,但是效率不如HashMap
3) TreeMap.实现了SortedSet接口,因此其中的元素是有序的
总结:
安全性
同步/异步
类
线程安全:
同步
①HashTable②Vector
线程不安全:
异步
①HashMap②ArrayList
③LinkedList
安全性 同步/异步 具体的类 线程安全同步①HashTable②Vector 线程不安全异步①HashMap②ArrayList
③LinkedList
- Collections框架简介
- Commons-Collections简介
- 集合框架-Collections
- java Collections框架
- 集合框架--Collections
- Java集合框架Collections
- Java:Collections框架
- Collections集合框架详细讲解
- Java集合框架->Collections类
- Collections工具类(集合框架)
- 集合框架工具类COllections
- 集合框架-工具类-Collections
- 集合框架总结(collections)
- Collections集合框架工具类
- 【集合框架】5. Collections类
- 集合框架---Map、Collections、compare
- Collections集合框架工具类
- Java Collections Framework(JAVA集合框架)中的常用集合及其特点、适用场景、实现原理简介
- 哪有python入门经典教程资源分享?
- git reset
- 剑指offer:最小的K个数
- git 使用
- 【问题汇总】开发中常见问题的解决办法
- Collections框架简介
- Linux安装3.5.X版本的Python
- 简单实现Android本地音乐的播放
- 10、链式哈希表的应用-符号表
- 2017暑假训练第八天
- HDU 6092:Rikka with Subset
- SVM学习
- NYOJ 108 士兵杀敌(一)
- Java设计模式——工厂模式