黑马程序员_日记41_HashSetDemo

 ——- android培训java培训、期待与您交流! ———-

Set集其实就是一个不包含重复元素的 collection。
Set元素存取是无序的,就是说元素取出和存入的顺序不一致;
Set元素是不可以重复的,就是说Set元素具有唯一性。
Set和Collecion的功能是一样的。

Set常见的子类有:
HashSet和TreeSet。

HashSet的底层是哈希表,多线程实现是不同步的,这点要注意!
下面先演示一下HashSet。
1 创建一个哈希表
2 添加元素
3 添加重复元素
4 利用迭代器取出元素
5 观察元素取出的顺序

import java.util.*;
class HashSetDemo
{
    public static void main(String[] args)
    {
        //1 创建一个哈希集合
        HashSet hs = new HashSet();

        //2 添加元素
        hs.add("num02");
        hs.add("num03");
        hs.add("num01");
        hs.add("num08");
        hs.add("num05");
        hs.add("num05");
        hs.add("num07");
        hs.add("num07");
        hs.add("num09");
        hs.add("num04");
        System.out.println("添加非重复元素:"+hs.add("num06"));
        System.out.println("添加重复元素:"+hs.add("num06"));

        //获取迭代器取出元素
        for(Iterator it = hs.iterator(); it.hasNext(); )
            System.out.println(it.next());
    }
}

这里写图片描述
因为add方法的返回值是boolean类型的,所以打印了true和false。
所以要注意:boolean add(obj)这个返回类型!

从运行结果来看,元素取出的顺序和存入的顺序是不一致的!
这就是Set所谓的元素存取是无序的!
千万不要混淆元素是无序的。
另外,通过运行结果也不难发现,元素是没有重复的。
因为当添加重复元素的时候,add返回值为false,
重复元素是添加不进去的!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值