java集合框架代码 java集合框架是什么,有什么优点

求大神,java的集合框架是什么意思?Java平台提供了一个全新的集合框架 。“集合框架”主要由一组用来操作对象的接口组成 。不同接口描述一组不同数据类型 。
Java 2集合框架图
集合接口:6个接口(短虚线表示),表示不同集合类型,是集合框架的基础 。
抽象类:5个抽象类(长虚线表示),对集合接口的部分实现 。可扩展为自定义集合类 。
实现类:8个实现类(实线表示),对接口的具体实现 。
在很大程度上,一旦您理解了接口,您就理解了框架 。虽然您总要创建接口特定的实现 , 但访问实际集合的方法应该限制在接口方法的使用上;因此 , 允许您更改基本的数据结构而不必改变其它代码 。
· Collection 接口是一组允许重复的对象 。
· Set 接口继承 Collection,但不允许重复 , 使用自己内部的一个排列机制 。
· List 接口继承 Collection,允许重复,以元素安插的次序来放置元素,不会重新排列 。
· Map接口是一组成对的键-值对象,即所持有的是key-value pairs 。Map中不能有重复的key 。拥有自己的内部排列机制 。
· 容器中的元素类型都为Object 。从容器取得元素时,必须把它转换成原来的类型 。
Java 2简化集合框架图
集合接口
1.Collection 接口
用于表示任何对象或元素组 。想要尽可能以常规方式处理一组元素时,就使用这一接口 。
(1) 单元素添加、删除操作:
 boolean add(Object o):将对象添加给集合
 boolean remove(Object o): 如果集合中有与o相匹配的对象,则删除对象o
(2) 查询操作:
 int size() :返回当前集合中元素的数量
 boolean isEmpty() :判断集合中是否有任何元素
 boolean contains(Object o) :查找集合中是否含有对象o
 Iterator iterator() :返回一个迭代器 , 用来访问集合中的各个元素
(3) 组操作 :作用于元素组或整个集合
 boolean containsAll(Collection c): 查找集合中是否含有集合c 中所有元素
 boolean addAll(Collection c) : 将集合c 中所有元素添加给该集合
 void clear(): 删除集合中所有元素
 void removeAll(Collection c) : 从集合中删除集合c 中的所有元素
 void retainAll(Collection c) : 从集合中删除集合c 中不包含的元素
(4) Collection转换为Object数组 :
 Object[] toArray() :返回一个内含集合所有元素的array
 Object[] toArray(Object[] a) :返回一个内含集合所有元素的array 。运行期返回的array和参数a的型别相同,需要转换为正确型别 。
java集合框架的小问题因为HashMap一次次添加在对象内部并不是按照先后顺序添加的,我给你说说结果:
当只加第一个映射时,HashMap的打印结果是:
关键代码:
aa.put("1","java");
System.out.println(aa) ;
结果:
{1=java}
第二次:
aa.put("1","java");
aa.put("2","VB");
System.out.println(aa) ;
结果:
{2=VB, 1=java}
第三次:
aa.put("1","java");
aa.put("2","VB");
aa.put("3","VC++");
结果:
{3=VC++, 2=VB, 1=java}
第四次:
aa.put("1","java");
aa.put("2","VB");
aa.put("3","VC++");
aa.put("4","c++");
结果:
{3=VC++, 2=VB, 4=c++, 1=java}
第五次:
aa.put("1","java");
aa.put("2","VB");
aa.put("3","VC++");
aa.put("4","c++");
aa.put( "5","c");
结果:
{3=VC++, 5=c, 2=VB, 4=c++, 1=java}
第六次:
aa.put("1","java");
aa.put("2","VB");
aa.put("3","VC++");
aa.put("4","c++");
aa.put( "5","c");
aa.put( "6","basic");

推荐阅读