集合框架,代表和操纵集合的统一框架.
collection 采用线性列表存储方式.
collection接口及子类一次只能存放一个元素.
//定义一个集合
Collection coll1 = new ArrayList();
//有序不唯一的集合(可变长度的动态数组)
coll1.add(123);
coll1.add("abc");
Collection coll2 = new ArrayList();
coll2.add("abc");
coll2.add(coll1);
coll2.remove("abc");
//查找coll1是否有123这个数据
boolean con = coll1.contains(123);
String msg = con == true?"存在":"不存在";
//取集合交集i 保利共有的元素,去掉不同的元素
boolean con1 = coll1.retainAll(coll2);
if (con1) {
System.out.println("取交集后得结果:");
System.out.println("coll1"+coll1);
System.out.println("coll2"+coll2);
}
//集合转数组
Object[] obj = coll1.toArray();
System.out.println(Arrays.toString(obj));
System.out.println(coll1.size());
//集合迭代遍历
Iterator i = coll1.iterator();
while (i.hasNext()) {
System.out.println(i.next());
Arraylist 有序重复的
ArrayList作为数组,根据下标进行操作,查询和修改的速度是很快的
ArrayList list = new ArrayList();
list.add("1");
System.out.println(list.size());
list.add(2);
System.out.println(list.size());
list.add(3.0);
System.out.println(list.size());
//修改数据
list.set(1, "二");
//根据索引(下标)查看list集合的数据
System.out.println(list.get(1));
//删除
list.remove(2);
//遍历
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
//增强型for 循环 Iterable接口 iterator 迭代器
for (Object o : list) {
System.out.println(o);
}
//3.迭代器
Iterator i = list.iterator();
while (i.hasNext()) {
System.out.println(i.next());
总结:ArrayList作为动态数组,根据下表进行元素操作.查询和修改的速度是很快的
LinkedList list1 = new LinkedList();
list1.addFirst(1);//将数据添加到队伍的首位
list1.addLast(3);
//LinkedList作为链表式存储数据,根据俩端的位置进行数据操作,再添加和删除上明显占据优势
//但是因为是俩端叠加操作,查找和修改
//集合遍历:提供三种方案 for foreach(增强型for)Iterator
//for循环你在进行循环的时候对于集合数据不能删除
//Iterator 是所有集合遍历的统一标准
hashset:
HashSet set = new HashSet();
set.add("1");
set.add("3");
set.add("2");
//存值与取值顺序不同 不能存储重复数据
for (Object o : set) {
System.out.println(o);
}
//set集合存取值无序:set集合存值的时候,会根据hashcode码进行存值的
//不能存重复的值
//set集合存储数据一块hash算法中的key-value进行存储,其实set用key进行存储
/**
* set接口存值取值特点:
* 1.无序,不重复
* 2.set接口没有获取单个元素,或者修改元素的方法
*/
Hashmap
//定义集合
HashMap map = new HashMap();
//添加元素
map.put("lo003","张三");
//遍历
Set set = map.keySet();//获取所有的key
Collection collection = map.values();//获取所有的value
Set set1 = map.entrySet();//同时获取所有的key和value
Iterator i =set1.iterator();
while (i.hasNext()) {
System.out.println(i.next());
网友评论