集合类特性与使用

集合

结构图

在这里插入图片描述

1.collection 与 map

常用的数据结构:

	队例:  特点:存放的数据,先进先出,后进后出
			类似于:火车过山洞,最先进入山洞的,最先出来

	栈:     特点:栈里面数据,是先进后出,后进先出
			类似于:弹夹装子弹,最先装的子弹,最后击发出来

hashSet集合

特点:
		1、它是一种动态数组,声明时,不需要指定集合大小,空间不够时,可以自动变大
		2、集合中,不允许出现重复元素(如果元素存在,不会添加)
		3![在这里插入图片描述](https://img-blog.csdnimg.cn/20210331173155935.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3lhbmdfemhvbmdfcm9uZw==,size_16,color_FFFFFF,t_70#pic_center)
、存放在HashSet集合中的数据,是无序的
1.remove 删除只能删除对象,没有索引

hashSet无序,没有修改的方法,只能先删除在添加

Set<Integer> set = new HashSet<>();
		Integer i1 = new Integer(123);
		Integer i2 = new Integer(152);
		Integer i3 = new Integer(777);
		set.add(i1);
		set.add(i2);
		set.add(i3);

		 Iterator<Integer> it = set.iterator();
		 while (it.hasNext()) {
		 Integer i = it.next();
		 System.out.println(i);
		}
		for (Integer integer : set) {
			System.out.println(integer);
		}

ArraysList集合

ArraysList集合特点
	1、它是一种动态数组,声明时,不需要指定集合大小,空间不够时,可以自动变大
	2、从集合中取数据时,要通过下标来取
	3、集合中,允许出现重复元素
	4、它存储数据时,采用的是一种:队列的数据结构 (先存储的数据,最先被取出来)
	5、存放在ArrayList集合中的数据,是有顺序的
创建语法:List list = new ArrayList<>();//多态的方式创建
1.判断集合为空的话可以用 list.isEmpty();返回值是true和false
2.判断集合中是否包含某个元素 list.contains()
3.清除集合中所有的数据 list.clear();
4.向集合中添加元素 list.add(对象);
5.向集合删除集合中的元素 list.remove(对象); 或者 list.remove(索引)
6.向集合修改集合中的元素 list.set(1, “张三”);
7.查询集合的大小 list.size();
8.获取集合中的元素 list.get(0);//通过索引来获取值
9.查询集合中的所有元素 用Iterator iterator = list.iterator(); 用迭代器
9.对集合排序 Collections.sort(list); ----该方法,可以对ArrayList集合排序(升序)
		List<String> list = new ArrayList<>();//使用的是多态的写法
		list.add("李四");//向集合中添加元素
		list.set(0, "张三");//修改集合中的元素
		System.out.println(list.contains("张三"));//判断集合中是否包含某个元素
		list.remove(0);//删除集合中的元素
		list.add("李四");//向集合中添加元素
		list.clear();//清除集合中所有的数据
		Iterator<String> iterator = list.iterator();//使用迭代器遍历集合元素
		while (iterator.hasNext()) {//判断集合中是否有元素
			System.out.println(iterator.next());//如果有则取出集合中的元素
		}

HashMap集合

HashMap集合特点
这种集合不是通过下标访问,它是一种:键、值对集合
	特点:
		1、存储数据时,要同时设置:键、值 (一个键对应一个值)
		2、取数据时,要通过键取到对应的值 
		3、HashMap中的键,不允许出现重复值(如果键重复,后一次的值,将会把前一次的值覆盖)
		4、它存放的数据没有顺序
创建语法:Map<Integer, String> map = new HashMap<Integer, String>();
1.向集合中添加元素 map.put(1, “张三”);
2.向集合删除集合中的元素 map.remove(“张三”); 或者 map.remove(1);
3.向集合修改集合中的元素 map.remove(1);
4.判断集合中是否包含某个元素 map.containsValue(“李四”);
5.查询集合的大小 map.size();
6.获取集合中的元素 map.get(0);//通过键来获取值
7.查询集合中的所有元素 用Iterator iterator = map.values().iterator(); 用迭代器
		Map<Integer, String> map = new HashMap<Integer, String>();//使用的是多态的写法
		map.put(1, "张三");//向集合中添加元素
		map.remove("张三");//删除集合中的元素
		map.replace(1, "李四");替换集合中的元素
		map.remove(1);//删除集合中的元素
		System.out.println(map.get(1));//通过键来获取值
		map.containsValue("李四");//判断集合中是否包含该元素
		Iterator<String> iterator = map.values().iterator();
		while (iterator.hasNext()) {//判断集合中是否有元素
			System.out.println(iterator.next());//如果有则取出集合中的元素
		}

三大集合的区别和联系

1、有序:ArraysList集合 无序:HashMap集合 HashSet集合
2、重复值:ArraysList集合 不允许重复值 HashMap集合 hashSet集合
HashMap集合键可以重复,值不允许重复,如果键重复,就会覆盖原来的值
3.ArraysList集合通过下标获取元素,HashSet集合是直接获取元素,HashMap集合通过键来获取值
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值