学习目标:
- 如何向其中存储数据?
- 如何遍历以及取出数据?
- 该集合有什么特性,什么时候选用该集合?
导包:
所有集合都放在util包中;
顶层接口:collection
用到的集合类都是collection的实现类
Collecton接口常用的子接口有:List接口(列表)、Set接口(集)
List接口常用的子类有:ArrayList类(数组列表)、LinkedList类(链表)
Set接口常用的子类有:HashSet类(哈希表)、LinkedHashSet类(基于链表的哈希表实现)
List集合允许存储重复元素,Set集合不允许存储重复元素
List集合元素是有序的,Set集合元素是无序的
有序性:存储与打印顺序一致
public static void function() {
Collection<String> coll = new ArrayList<String>();
coll.add("zheng");
coll.add("gao");
System.out.println(coll);
}
}
输出:
[zheng, gao]
注意:collection后面可以不限制类型,即为object类型,此时集合内什么类型都可以存。
public static void function() {
Collection coll = new ArrayList();
coll.add(Object o);
}
}
collection接口方法:
-
void clear()
void clear() 清空集合中的所有元素,集合容器本身依然存在 -
boolean contains(Object o)
判断对象是否存在于集合中,对象存在返回true,方法参数是Object类型 -
Object[] toArray()
集合中的元素,转成一个数组中的元素, 集合转成数组
返回是一个存储对象的数组, 数组存储的数据类型是Object
转为数组后长度不能再变化 -
boolean remove(Object o)
移除集合中指定的元素
删除成功返回真
元素不存在,无法删除,返回false
存在两个相同元素时删除第一个
import java.util.ArrayList;
import java.util.Collection;
public class CollectionDemo {
public static void main(String[] args) {
function_3();
}
private static void function_3() {
// TODO Auto-generated method stub
Collection<String> coll = new ArrayList<String>();
coll.add("zheng");
coll.add("gao");
coll.add("wang");
coll.add("liu");
System.out.println(coll);
boolean b = coll.remove("liu");
System.out.println(b);
System.out.println(coll);
}
private static void function_2() {
// TODO Auto-generated method stub
Collection<String> coll = new ArrayList<String>();
coll.add("zheng");
coll.add("gao");
coll.add("wang");
coll.add("liu");
Object[] objs = coll.toArray();
for(int i = 0 ; i<objs.length; i++) {
System.out.println(objs[i]);
}
}
private static void function_1() {
// TODO Auto-generated method stub
Collection<String> coll = new ArrayList<String>();
coll.add("zheng");
coll.add("gao");
coll.add("wang");
coll.add("liu");
boolean b = coll.contains("zheng");
System.out.println(b);
}
public static void function() {
Collection<String> coll = new ArrayList<String>();
coll.add("zheng");
coll.add("gao");
System.out.println(coll);
coll.clear();
System.out.println(coll);
}
}