Set

package lis0924;

//生成器导包
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
import java.util.TreeSet;

public abstract class Text03 {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根

		//Set 集合
		//实现类HashSet  哈希 Hash
		//搜索引擎,利用了哈希值
		//特点:1.不能存放重复数据
		//   2.没有顺序和索引
		Set<Person> s1=new HashSet<>();//注意要产生生成器,alt+/
		
		Person p0=new Person("A",20);
		Person p1=new Person("A",20);
		//不能存放重复数据也不报错
		s1.add(p0);
		s1.add(p0);
		s1.add(p1);
		s1.add(new Person("B",30));
		s1.add(new Person("C",30));
		s1.add(new Person("D",30));
		s1.add(new Person("E",30));
		s1.add(null);
		
		System.out.println("长度size="+s1.size());
		
		System.out.println("是否存在"+s1.contains(p0));//判读是否存在
		
		//s1.remove(p0);//移除
		System.out.println("长度size="+s1.size());
		
		//遍历
		//1.foreach
		System.out.println("foreach方式:...........");
		for(Person p:s1)
		{
			System.out.println(p);
		}
		//迭代器
		System.out.println("迭代器方式:..................");
		Iterator<Person> it=s1.iterator();
		while(it.hasNext())
		{
			Person p=it.next();
			System.out.println(p);
		}
		
		//TreeSet
		TreeSet<String>ts=new TreeSet<>();
		ts.add("Z");
		ts.add("X");
		ts.add("Y");
		ts.add("B");
		ts.add("A");
		ts.add("M");
		ts.add("N");
		ts.add("X");
		ts.add(null);//不能是空值
		
		for(String str :ts)
		{
			System.out.println(str);
		}
		
	}

}

  

原文地址:https://www.cnblogs.com/liuyanzeng/p/5906821.html