在学习java的基本知识时,对于集合的一些知识进行了知识的总结,仅个人观点
1.集合的基本概述
集合是对于多个数据进行存储操作的结构,简称是java容器
2.集合的优点(相对于数组而言)
①初始化之后,其长度可以进行修改
②对于数据的增删改查等操作,提供了很多的方法,效率比较高
③对于无序,不重复的数据中数组无法存储,而集合中可以进行存储
3.集合的框架
4.Collection接口
①概述
是单列集合,用来存储一个一个的数据对象
②常用的方法
以arrayList为例 Collection<String> collection= new ArrayList<String>();
1.add(Object obj)
将元素e添加到集合
collection中 collection.add("曹操");
2.size()
获取添加的元素的个数
System.out.println(collection.size());
3.addAll(Collection coll1)
将coll1中的元素调教到当前的集合中
Collection<String> coll2= new ArrayList<String>();
coll2.add("曹植");
coll2.add("曹冲");
collection.addAll(coll2);
4.isEmpty()
判断当前集合是否为空
System.out.println(collection.isEmpty());
5.clear()
清除集合元素
coll2.clear();
6.contains(Object obj)
判断当前集合是否包含obj[在判断的时候会调用object对象所在的equals()]
7.containsAll(Collection coll1)
判断形参Coll1中对的所有元素是否都存在当前的集合中
8.remove(Object obj)
从当前集合中移除obj元素
9.removeAll(Collection coll1)
从当前集合中移除coll1中的所有元素
10.retainAll()
去交集,获取当前集合和形参Coll1集合的交集,并且返回当前的集合
11.equals(Object obj)
判断当前集合和形参集合的元素都相同,想要返回true
12.equals(Object obj)
判断当前集合和形参集合的元素都相同,如果一样就返回true.
3.Collections接口的遍历
// 创建集合:声明的类型是List接口,创建的对象是List接口实现类
List<String> list = new ArrayList<String>();
// 添加数据:可以预知迭代顺序【存和取的顺序一致】
list.add("曹操");
list.add("曹丕");
System.out.println(list);
System.out.println("===============直接访问==============");
System.out.println(list.get(0));
System.out.println(list.get(1));
System.out.println("===============for==============");
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
System.out.println("===============while==============");
int index = 0;
while (index < list.size()) {
System.out.println(list.get(index));
index++;
}
System.out.println("===============do-while==============");
index = 0;
do {
System.out.println(list.get(index));
index++;
} while (index < list.size());
System.out.println("===============foreach==============");
for (String name : list) {
System.out.println(name);
}
System.out.println("===============iterator==============");
// 获取迭代器
Iterator<String> it = list.iterator();
while (it.hasNext()) {
String name = it.next();
System.out.println(name);
}