集合类

List

		List<String> list = new ArrayList<>(); // 创建集合对象
		list.add("a"); // 向集合添加元素
		list.add("b");
		list.add("c");
		int i = (int) (Math.random() * list.size()); // 获得0~2之间的随机数
		System.out.println("随机获取数组中的元素:" + list.get(i));
		list.remove(2); // 将指定索引位置的元素从集合中移除
		System.out.println("将索引是'2'的元素从数组移除后,数组中的元素是:");
		for (int j = 0; j < list.size(); j++) { // 循环遍历集合
			System.out.println(list.get(j)); // 获取指定索引处的值

实例化List接口对象

List<String> list = new ArrayList<>();//优先使用,数组
List<String>list2 =new LinkedList<>();//插入和删除特别频繁时,链表结构

iterator迭代器

		Collection<String> list = new ArrayList<>(); // 实例化集合类对象
		list.add("a"); // 向集合添加数据
		Iterator<String> it = list.iterator(); // 创建迭代器
		while (it.hasNext()) { // 判断是否有下一个元素
			String str = (String) it.next(); // 获取集合中元素
			System.out.println(str);
		}

set接口

不包含重复接口

		Set set = new HashSet();// 创建Set集合
		Set set2 = new TreeSet();
		Set<String> set3= new HashSet();
		set.add("1");
		set.add("9");
		set.add("7");// 向集合中添加数据
		set.add("3");
			
		Iterator<String> it = set.iterator();// 创建迭代器
		while (it.hasNext()) {// 遍历HashSet集合
			String str = (String) it.next();// 获取集合中的元素
			System.out.println(str);
		}

HashSet本身不关心元素之间的顺序,但输出时却好像会从小到大排序,保留NULL
TreeSet 会希望按照元素的自然顺序进行排序使用,不允许使用NULL

Map集合

HashMap类实现的Map集合添加和删除映射关系效率更高
TreeMap 希望集合中的对象存在一定的顺序

		Map<String, String> map = new HashMap<>(); // 创建Map实例
		map.put("ISBN-978654", "Java从入门到精通"); // 向集合中添加对象
		map.put("ISBN-978361", "Android从入门到精通");
		map.put("ISBN-978893", "21天学Android");
		map.put("ISBN-978756", "21天学Java");
		Set<String> set = map.keySet(); // 构建Map集合中所有key对象的集合
		Iterator<String> it = set.iterator(); // 创建集合迭代器
		System.out.println("key值:");
		while (it.hasNext()) { // 遍历集合
			System.out.print(it.next()+"\t");
		}
		Collection<String> coll = map.values(); // 构建Map集合中所有values值集合
		it = coll.iterator();
		System.out.println("\nvalues值:");
		while (it.hasNext()) { // 遍历集合
			System.out.print(it.next()+"\t");

(1)List集合关注的是索引,其元素是顺序存放的,例如一个班的学生成绩,成绩可以重复,就可以使用List集合存取。
(2)Set集合关注唯一性,它的值不允许重复,例如每个班的学生的学号,每个学生的学号是不能重复的。
(3)Map集合关注的是唯一的标识符(KEY),它将唯一的键映射到某个元素,例如每个班学生的学号与姓名的映射,每个学号对应一个学生的姓名,学号是不能重复的,但是学生的姓名有可能重复。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值