欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

Java Set基础知识

发布时间:2025/3/12 38 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Java Set基础知识 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

Set集合中不包含重复对象。
HashSet:

HashSet的底层用哈希散列表来存储对象。其中的散列码是由关键字的信息内容确定的。关键字到散列码的转换是自动执行的。

存储元素时底层要做的判断:1.调用元素的hashCode()方法,直接访问对应的数组元素,有没有这个哈希值,没有就直接存储.2.数组中已经有哈希值相同的,那么就调用元素的equals()方法,和哈希值相同的元素进行一一比较3.equals()方法比较,有相等的就不存储,不相等就存储

所以可见HashSet是不按特定顺序存放的。并不能确定集合的排列顺序。

它的优点是,即使对于大的集合,也能使一些基本操作运行的时间保持不变。

package list.test; import java.util.HashSet;public class Test4 {public static void main(String args[]) {// 创建HashSet 对象HashSet hs = new HashSet();// 加入元素到HashSet 中hs.add("B");hs.add("A");hs.add("D");hs.add("E");hs.add("C");hs.add("F");System.out.println(hs);} } //[A, B, C, D, E, F]

TreeSet:TreeSet是实现Set接口的实现类。所以它存储的值是唯一的,同时也可以对存储的值进行排序,排序用的是二叉树原理。

根据其元素的自然顺序按升序排序。

package list.test; import java.util.TreeSet; public class Test5 {public static void main(String args[]) {// 创建TreeSet 对象TreeSet ts = new TreeSet();// 加入元素到TreeSet 中ts.add("B");ts.add("A");ts.add("C");ts.add("E");ts.add("F");ts.add("D");System.out.println(ts);} } //[A, B, C, D, E, F]

总结

以上是生活随笔为你收集整理的Java Set基础知识的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。