集合框架(Util包)
①Collection--List(LinkedList 、ArrayList、Vector) 有序存储、可重复存储对象。
--Set(HashSet) 无序存储、不可重复存储对象
数据增长(元素超过初始设置大小):增长幅度不同。
②Map<键,值>---------(HashMap)JDK1.2出现,一种说法:HashMap是Hashtable的轻量级实现,用来代替Hashtable。
--(Hashtable)JDK1.0出现
两者的Hash算法基本一样,性能差别不大。同步性要求不同,Hashtable是方法同步的,HashMap则不同步,需要外同步(手动同步)。
Hashtable不允许null值,key-value都不允许,而HashMap允许。
括号中的为具体实现类,其他的为接口。有一个算法工具:Collections,用于集合查找、排序等等。
①Collection--List(LinkedList 、ArrayList、Vector) 有序存储、可重复存储对象。
--Set(HashSet) 无序存储、不可重复存储对象
LinkedList、ArrayList、Vector区别:LinkedList采用链表方式存储方式、而ArrayList Vector采用数组存储方式。
LinkedList在元素的删除、插入效率会比较高,而ArrayList、Vector遍历元素和随机访问元素效率较高。
ArrayList、Vector区别:同步性:Vector是线程安全的(同步),ArrayList是线程不安全的,相对而言,性能ArrayList就会高一些。数据增长(元素超过初始设置大小):增长幅度不同。
②Map<键,值>---------(HashMap)JDK1.2出现,一种说法:HashMap是Hashtable的轻量级实现,用来代替Hashtable。
--(Hashtable)JDK1.0出现
两者的Hash算法基本一样,性能差别不大。同步性要求不同,Hashtable是方法同步的,HashMap则不同步,需要外同步(手动同步)。
Hashtable不允许null值,key-value都不允许,而HashMap允许。
括号中的为具体实现类,其他的为接口。有一个算法工具:Collections,用于集合查找、排序等等。