set集合的特点

set集合的特点set集合的特点A:存入集合的顺序和取出集合的顺序不一致B:没有索引C:存入集合的元素没有重复set接口的实现类常用的有HashSet和TreeSet类。语法格式如下:Set<String>set1=newHashSet<String>();Set<String>set2=newTreeSe…

大家好,又见面了,我是你们的朋友全栈君。

set集合的特点

    A:存入集合的顺序和取出集合的顺序不一致

    B:没有索引

    C:存入集合的元素没有重复

 

set接口的实现类常用的有HashSet和TreeSet类。语法格式如下:

Set<String> set1 = new HashSet<String>();

Set<String> set2 = new TreeSet<String>();

1.HashSet的使用

 public class HashSetDemo {
	public static void main(String[] args) {

		//创建集合对象
		HashSet<Student> hs = new HashSet<Student>();

		//创建元素对象
		Student s = new Student("zhangsan",18);
		Student s2 = new Student("lisi",19);
		Student s3 = new Student("lisi",19);

		//添加元素对象
		hs.add(s);
		hs.add(s2);
		hs.add(s3);

		//遍历集合对象
		for (Student student : hs) {
			System.out.println(student);
		}	 
	}	 
}

 

 

2.HashSet唯一性原理

   规则:新添加到HashSet集合的元素都会与集合中已有的元素一一比较

   首先比较哈希值(每个元素都会调用hashCode()产生一个哈希值)

   如果新添加的元素与集合中已有的元素的哈希值都不同,新添加的元素存入集合

   如果新添加的元素与集合中已有的某个元素哈希值相同,此时还需要调用equals(Object obj)比较

   如果equals(Object obj)方法返回true,说明新添加的元素与集合中已有的某个元素的属性值相同,那么新添加的元素存入集合

   如果equals(Object obj)方法返回false, 说明新添加的元素与集合中已有的元素的属性值都不同, 那么新添加的元素存入集合

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/135732.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Typora的最后一个免费版本MD编辑器「建议收藏」

    Typora的最后一个免费版本MD编辑器「建议收藏」title:Typora的最后一个免费版本date:2022-05-1116:39:04tags:MDcategories:软件废话不多说,直接来我的仓库下载就可以了。利用Typora把图片添加到Hexo博客中安装插件。$npminstallhexo-renderer-marked–save2.再修改一下配置文件_config.yml,加入下面的配置。marked:prependRoot:truepostAsset:true3.在“Blog->s

  • 使用lombok解决默认值问题

    使用lombok解决默认值问题

  • SCOM警报通知新特性:即时消息通知

    SCOM警报通知新特性:即时消息通知

  • 炮轰 杨丰盛的《Android应用开发揭秘》

    炮轰 杨丰盛的《Android应用开发揭秘》看到javaeye很多人在吹嘘、推荐杨丰盛的《Android应用开发揭秘》,个人就买了一本。首先拿到书时,再次感受到机工出版社的书的纸张独有的“薄如蝉翼、黄如粪便”的特征,不过想着javaeye一众人对书中内容的推荐,纸张的质量我忍了。接着看书,不过我慢慢发现书中一堆晦涩不清的表述——这种表述可能是我自己的中文理解问题,算了不说了。但书中还充斥着一堆垃圾代码,看下面书中代码…

  • linux中重启网卡_ubuntu重启网络

    linux中重启网卡_ubuntu重启网络一、network#servicenetworkrestart二、ifdown/ifup#ifdowneth0#ifupeth0三、ifconfig#ifconfigeth0down#ifconfigeth0up

  • pycharm安装教程2020.3.4_python安装步骤

    pycharm安装教程2020.3.4_python安装步骤第一步安装解释器,第二步安装pycharm1第一步安装解释器1.1什么是解释器:??就是将Python程序翻译成为计算机可以识别的01代码1.2安装解释器:解释器安装地址:https://www.python.org/downloads/release/python-372根据自己的操作系统安装适配的解释器:这里以Windows为例注意安装的时候我们需要需注意吧解释器添加到环境变量里面双击开始安装勾选addpythontopath,如果安装的时候没有勾选,请安装结束以后按

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号