菜鸟学Java之Set接口之HashSet浅析

来源:互联网 发布:生产线电子看板数据 编辑:程序博客网 时间:2024/05/21 11:23

刚学完Java中集合相关的知识,写个博客记录一下。

HashSet是Java集合框架中实现Set接口的一个集合类。特点是此集合中的元素无序,不重复,可以存放不同类型的数据。HashSet底层实现原理为数组。

不重复:两个对象e1和e2,如果e1.equals(e2)返回结果为true,则e1和e2重复


创建格式如下(会报警告,因为并没有使用泛型,之后会补充)

HashSet set = new HashSet();//创建了一个名为set的HashSet集合


几个HashSet常用的方法:

向此集合中添加元素需使用boolean add()方法

set.add("a");set.add("cccc");set.add(6);

这时候可以直接输出此集合元素查看
System.out.println(set);
输出结果:[6, a, cccc]


其中要稍微解释一下HashSet的无序原理,当你输入一个元素时,系统会自动调用hashCode()方法获得该元素的哈希值,并使用此哈希值进行哈希算法得到要存入底层数组的索引值。因此无序指的是你输入的顺序和最后输出顺序相比是无序的,但是无论你运行多少次,输出的结果并不会改变。


int size()方法能够得到此集合的大小。

System.out.println(set.size());
输出结果为:3


boolean isEmpty()方法能够判断集合是否为空。

System.out.println(set.isEmpty());
输出结果为:false


Java初学者,如有错误欢迎指正,如有问题加q1363129424,共同探讨,共同进步


原创粉丝点击