Set集合(接口)的实现类(子类)——HashSet 类

摘要:

前面己经介绍过Set 集合,它类似于一个罐子, 程序可以依次把多个对象"丢进" Set 集合,而Set集合通常不能记住元素的添加顺序。Set 集合与Collection 基本相同,没有提供任何额外的方法。实际上Set 就是Collection ,只是行为略有不同( Set 不允许包含重复元素) 。Set 集合不允许包含相同的元素,如果试图把两个相同的元素加入同一个Set 集合中, 则添加操作失败, addO方法返回fal se ,且新元素不会被加入。
上面介绍的是Set 集合的通用知识,因此完全适合后面介绍的HashSet、TreeSet 和EnumSet 三个实现类,只是三个实现类还各有特色。

Java Set集合的概述及特点:https://blog.csdn.net/hewenqing1/article/details/104166374

 

HashSet 类

一、概述:

HashSet 是Set 接口的典型实现,大多数时候使用Set 集合时就是使用这个实现类。HashSet 按Hash算法来存储集合中的元素,因此具有很好的存取和查找性能。

二、特点:

1、不能保证元素的排列顺序,顺序可能与添加顺序不同,顺序也有可能发生变化。

代码实现:存储字符串并遍历

package cn.wen_01;

import java.util.HashSet;

/*
 * HashSet:存储字符串并遍历
 */
public class HashSetDemo {
	public static void main(String[] args) {
		// 创建集合对象
		HashSet<String> hs = new HashSet<String>();

		// 创建并添加元素
		hs.add("hello");
		hs.add("world");
		hs.add("java");
		hs.add("world");

		// 遍历集合
		for (String s : hs) {
			System.out.println(s);
		}
	}
}

2、HashSet如何保证元素唯一性? 为什么存储字符串的时候,字符串内容相同的只存储了一个呢?

1)查看源码:选中类名(F3或者Ctrl+鼠标点击)    例如图下的add()方法的查询,其他类似。

 这里不是完整的代码,截取代码片段按顺

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值