Set常用方法总结

一、List集合与Set集合区别:
1、List集合可以保存重复的数据,但是Set集合不可以
2、List集合是按照存储顺序保存的,Set集合中HashSet不是按照存储顺序保存的,具有不确定性;LinkedHashSet是按照用户储存的顺序储存的;TreeSet是按照自然顺序保存的
二、Set常用方法
1、添加元素
2、获取元素个数
3、判断集合中是否有元素
4、清空这个集合
5、遍历

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

public class Test2 {

	public static void main(String[] args) {
//		Set<String> names = new HashSet<String>();
//		//1、List集合可以保存重复的数据,但是Set集合不可以
//		//添加元素
//		names.add("Tim");
//		names.add("Tim");
//		names.add("Jim");
//		names.add("Jimmy");
//		
//		//获取元素个数
//		int size = names.size();
//		System.out.println(size);
//		
//		//2、List集合是按照存储顺序保存的,Set集合中HashSet不是按照存储顺序保存的,具有不确定性;LinkedHashSet是按照用户储存的顺序储存的;TreeSet是按照自然顺序保存的
//		for (String name : names) {
//			System.out.print(name+"	");
//		}
//		System.out.println();
		
		Set<String> names = new HashSet<String>();  //调用HashSet构造方法
													//public HashSet() {
												    //    map = new HashMap<>();//为map成员变量赋值,HashSet对象
												    //}
		names.add("Tim");//源码:
							//public boolean add(E e) {
							//	return map.put(e, PRESENT) == null;//向Map集合中HashMap容器添加数据  PRESENT常量   本质:HashSet存储数据时本质是存到了HashMap集合的key
							//}
		names.add("Jim");
		names.add("Jimmy");
		
		//判断是否为空,是,返回true,不为空,返回false
		boolean flag = names.isEmpty();
		System.out.println(flag);
		
//		//用于清空这个集合
//		names.clear();
//		flag = names.isEmpty();
//		System.out.println(flag);
		
		//注意:
//		names.get(0);//get方法不存在;同理:没有list.set(3, "Tim");没有list.add(0, "Jim");
		
		//同样,遍历不能用传统for循环,只有两种
		for (String name : names) {//第一种
			System.out.print(name+"	");
		}
		System.out.println();
		
		Iterator<String> iterator = names.iterator();//将集合中的数据转存
		while(iterator.hasNext()) {
			System.out.print(iterator.next()+"	");
		}
		System.out.println();
	}
}

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值