集合练习题

  1. 将1~100之间的所有正整数存放在一个List集合中,并将集合中索引位置是10的对象从集合中移除。
public class Test1 {
	public static void main(String[] args) {
		//创建集合对象
		List<Integer> list=new ArrayList<>();
		//向集合添加元素
		for (int i = 1; i < 101; i++) {
			list.add(i);
		}
		//遍历集合
		System.out.println("集合的所有元素为:");
		for (Integer integer : list) {
			System.out.print(integer+" ");
		}
		System.out.println();
		//移除索引为10的对象
		list.remove(10);
		for (int i = 0; i < list.size(); i++) {
			System.out.println("集合中索引为:"+i+"的元素为:"+list.get(i));
		}
		
	}

}

运行结果
在这里插入图片描述remove()方法移除元素后,其后的元素上移。

  1. 分别向List集合以及Set集合中添加“A” “a” “c” “C” “a” 5个元素,观察重复值“a” 能否重复地在List集合以及Set集合中添加。

List集合

public class Test2_1 {
	public static void main(String[] args) {
		//创建集合对象
		List<String> list=new ArrayList<>();
		//添加数据
		list.add("A");
		list.add("a");
		list.add("c");
		list.add("C");
		list.add("a");
		//遍历数组
		System.out.println("集合所有元素为:");
		for (String string : list) {
			System.out.print(string+" ");
		}
	}

}

运行结果
在这里插入图片描述
Set集合

public class Test2_2 {
	public static void main(String[] args) {
		//HashSet创建集合对象
		Set<String> set1=new HashSet<>();
		//添加数据
		set1.add("A");
		set1.add("a");
		set1.add("c");
		set1.add("C");
		set1.add("a");
		//遍历集合
		System.out.println("集合的所有元素为:");
		for (String string : set1) {
			System.out.print(string+" ");
		}
		System.out.println();
		//TreeSet创建集合对象
		Set<String> set2=new TreeSet<>();
		//添加数据
		set2.add("A");
		set2.add("a");
		set2.add("c");
		set2.add("C");
		set2.add("a");
		//遍历集合
		System.out.println("集合的所有元素为:");
		for (String string : set2) {
			System.out.print(string+" ");
		}
	}

}

运行结果
在这里插入图片描述
结论:List集合允许值重复,Set集合不允许值重复。

  1. 创建Map集合,创建Emp对象,并将Emp对象添加到集合中(Emp对象的id作为Map集合的键),并将id为“015”的对象从集合中移除。
public class Test3 {
	public static void main(String[] args) {
		//创建集合对象
		Map<String, String> map=new HashMap<>();
		//创建Emp对象
		Emp emp=new Emp("012", "张三");
		Emp emp2=new Emp("013", "李四");
		Emp emp3=new Emp("015", "王五");
		//向集合添加元素
		map.put(emp.getE_id(), emp.getE_name());
		map.put(emp2.getE_id(), emp2.getE_name());
		map.put(emp3.getE_id(), emp3.getE_name());
		/*
		 * 遍历集合
		 */
		//获取key的集合
		Set<String> set=map.keySet();
		//创建迭代器
		Iterator<String> iterator=set.iterator();
		//循环遍历
		System.out.println("集合所有元素为:");
		while (iterator.hasNext()) {
			String string=(String)iterator.next();
			String name=map.get(string);
			System.out.println(string+" "+name);
		}
		//移除id为“015”的对象
		map.remove("015");
	    //移除后遍历
		//获取key的集合
		Set<String> set2=map.keySet();
		//创建迭代器
		Iterator<String> iterator2=set2.iterator();
		//循环遍历
		System.out.println("集合所有元素为:");
		while (iterator2.hasNext()) {
			String string=(String)iterator2.next();
			String name=map.get(string);
			System.out.println(string+" "+name);
		}
		
	}

}

运行结果
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值