Java集合框架(3)Set

Set是一个集合,它可以包含一系列不重复的元素。
Set接口与List类似,Set在java中只是一个接口,它本身只是声明了Set类应当提供的操作功能,但并未真正实现。

//HashSet
import java.util.*;

public class TestHashSet
{
public static void main(String[] args)
{
    HashSet<String> hs = new HashSet<String>();
    
    hs.add("Marry");
    hs.add("Tom");
    hs.add("Jack");
    
    System.out.println("Marry在当前set中:" + hs.contains("Marry"));
    System.out.println("LinDa在当前set中:" + hs.contains("Linda"));
    
    Iterator<String> it = hs.iterator();
    
    System.out.println("当前set包含以下元素:");
    while(it.hasNext())
    {
        System.out.println(it.next());
    }    
}
}

在这里插入图片描述

//注意重复加入的元素,遍历时只输出一个。
import java.util.*;

class TestHashSet
{
	public static void main(String[] args)
	{
	    HashSet<String> hs = new HashSet<String>();
	    
	    hs.add("Marry");
	    hs.add("Tom");
	    hs.add("Jack");
	    
	    hs.add("Marry");//重复加入元素Marry
	    
	    System.out.println("Marry在当前set中:" + hs.contains("Marry"));
	    System.out.println("LinDa在当前set中:" + hs.contains("Linda"));
	    
	    Iterator<String> it = hs.iterator();
	    
	    System.out.println("当前set包含以下元素:");
	    while(it.hasNext())
	    {
	        System.out.println(it.next());
	    }	    
	}
}

在这里插入图片描述

//TreeSet

import java.util.*;

public class TreeSet
{
public static void main(String[] args)
{
    TreeSet<String> ts = new TreeSet<String>();
    
    ts.add("Marry");
    ts.add("Tom");
    ts.add("Jack");
    
    System.out.println("Marry在当前set中:" + ts.contains("Marry"));
    System.out.println("LinDa在当前set中:" + ts.contains("Linda"));
    
    Iterator<String> it = ts.iterator();
    
    System.out.println("当前set包含以下元素:");
    while(it.hasNext())
    {
        System.out.println(it.next());
    }    
}
}

在这里插入图片描述
从结果中可以看出元素被排序了
将元素加入到set中时,将以元素的大小关系组织树。

import java.util.*;

public class TreeSet
{
public static void main(String[] args)
{
    TreeSet<String> ts = new TreeSet<String>();
    
    ts.add("B");
    ts.add("C");
    ts.add("A");
    ts.add("F");
    ts.add("E");    
    ts.add("G");
    
    System.out.println("当前set中最低的元素是:" + ts.first());
    System.out.println("当前set中最高的元素是:" + ts.last());
    System.out.println("当前set中大于等于D的元素是:" + ts.ceiling("D"));
    System.out.println("当前set中小于等于D的元素是:" + ts.floor("D[]"));
}
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值