为什么80%的码农都做不了架构师?>>>   

package com.sun;/*         |——SortedSet接口——TreeSet实现类
Set接口——|——HashSet实现类|——LinkedHashSet实现类
HashSet
此类实现 Set 接口,由哈希表(实际上是一个 HashMap 实例)支持。它不保证集合的迭代顺序;特别是它不保证该顺序恒久不变。此类允许使用 null 元素。
此类为基本操作提供了稳定性能,这些基本操作包括 add、remove、contains 和 size,假定哈希函数将这些元素正确地分布在桶中。对此集合进行迭代所需的时间与 HashSet 实例的大小(元素的数量)和底层 HashMap 实例(桶的数量)的“容量”的和成比例。因此,如果迭代性能很重要,则不要将初始容量设置得太高(或将加载因子设置得太低)。我们应该为要存放到散列表的各个对象定义hashCode()和equals();*/
import java.util.HashSet;
import java.util.Iterator;
public class HashSetTest {@SuppressWarnings({ "unchecked", "rawtypes" })public static void main(String[] args){HashSet hs=new HashSet();/*hs.add("one");hs.add("two");hs.add("three");hs.add("four");*/hs.add(new Student(1,"zhangsan"));hs.add(new Student(2,"lishi"));hs.add(new Student(3,"wangwu"));hs.add(new Student(1,"zhangsan"));Iterator it=hs.iterator();while(it.hasNext()){System.out.println(it.next());}}
}
class Student         //HashSet要重写hashCode和equals方法
{int num;String name;Student(int num,String name){this.num=num;this.name=name;}public String toString(){return "num :"+num+" name:"+name;}public int hashCode(){return num*name.hashCode();}public boolean equals(Object o){Student s=(Student)o;return num==s.num && name.equals(s.name);}
}

转载于:https://my.oschina.net/jgy/blog/51845

HashSet 详解相关推荐

  1. Java 容器之Hashset 详解.

    ? 在之前的博文中本屌已经介绍过java的Collection接口. 作为实现了Collection接口的容器中, List容器无疑是最常用的, 无论是Arraylist, Linklist, Vec ...

  2. JAVA集合Set之HashSet详解_Java基础———集合之HashSet详解

    1.HashSet简介 Set是一个继承于Collection的接口,即Set也是集合中的一种.Set是没有重复元素的集合. HashSet是Set接口典型实现,它按照Hash算法来存储集合中的元素, ...

  3. JAVA集合Set之HashSet详解

    HashSet这个类实现了Set集合,实际为一个HashMap的实例.对集合的迭代次序没有任何保证; 特别是,它不能保证订单会随着时间的推移保持不变.这个类允许null 元素. 并且HashSet提供 ...

  4. Java HashSet详解

    一.HashSet集合概述和特点 1.底层数据结构是哈希表 2.存取无序 3.不可以存储重复元素 4.没有索引,不能使用普通for循环遍历 二.哈希值 - 哈希值简介         是JDK根据对象 ...

  5. java中有关hashset_java中HashSet详解

    HashSet 的实现 对于 HashSet 而言,它是基于 HashMap 实现的,HashSet 底层采用 HashMap 来保存所有元素,因此 HashSet 的实现比较简单,查看 HashSe ...

  6. java set hashset_java Set HashSet详解

    Set集合 就像把对象随意扔进罐子里,无法记住元素的添加顺序.Set某种程度就是Collection,方法没有不同,只是行为稍微不同,(不允许重复元素),如果一定要往里加两个相同元素,添加失败add( ...

  7. java set 接口_【Java提高十七】Set接口集合详解

    三.Set接口 Set是一种不包括重复元素的Collection.它维持它自己的内部排序,所以随机访问没有任何意义.与List一样,它同样运行null的存在但是仅有一个.由于Set接口的特殊性,所有传 ...

  8. Java HashSet的实现原理详解

    HashSet是Java Map类型的集合类中最常使用的,本文基于Java1.8,对于HashSet的实现原理做一下详细讲解. (Java1.8源码:http://docs.oracle.com/ja ...

  9. Java—Set集合详解(HashSet/LinkedHashSet/TreeSet/EnumSet)

    关注微信公众号:CodingTechWork,一起学习进步. Set集合介绍 Set集合的概念   Set集合类似于一个容器,程序把很多对象保存到Set集合中,Set集合对添加顺序不记录,当有重复的对 ...

最新文章

  1. 全球十大AI领军人物
  2. 架空输电线路运行规程_[精品课程]绝缘子及其设计架空输电线路设计
  3. gwas snp 和_GWAS分析中:为何有些SNP效应值大却不显著?
  4. mysql中nvl_Mysql中类似于oracle中nvl()函数的ifnull()函数
  5. 【随】WCF传输大数据的设置
  6. 习题2-3 求平方与倒数序列的部分和
  7. Immutable Collections(3)Immutable List实现原理(中)变化中的不变
  8. 广度优先搜索解决欧拉回路时间复杂度_迷宫搜索类的双向bfs问题(例题详解)
  9. 利用 jQuery 克隆 Object
  10. C++提高部分_C++模板的局限性_以及用模板具体化来解决模板局限性问题---C++语言工作笔记086
  11. onLayout与onMeasure
  12. 在做简单网页时,遇到的一些js问题
  13. GreenSock动画库在REACT里的使用
  14. 维修电工电气控制技能实训考核装置
  15. 哈夫曼编码问题(贪心)
  16. java语言的基本介绍及相关特性
  17. 为什么小孩会沉迷游戏?小孩沉迷游戏中不想上学怎么办
  18. 【渝粤教育】电大中专药理学基础 (2)_1作业 题库
  19. Inkscape基础制图教程
  20. 清华“姚班”大佬豆瓣征婚被网暴

热门文章

  1. vmware 添加 磁盘 空间
  2. 什么是三层交换机、网关、DNS、子网掩码、MAC地址
  3. Spring基础16——使用FactoryBean来创建
  4. 折叠屏就要来了,适配逼死 Android 开发?
  5. 如何解决请求URL长度超过配置的maxurlLength值问题
  6. 14.查找概论与顺序查找
  7. Linux man命令
  8. 【转】ibatis的简介与初步搭建应用
  9. HTTP的KeepAlive是开启还是关闭?
  10. Ubuntu 13.10 安装软件失败后出现的问题——已安装 post-installation 脚本 返回了错误号 1...