全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

java不重复的集合

发布时间:2023-03-14 15:53:00
发布人:wjy

  在Java中,有几种不重复的集合(也称为Set),它们可以存储不重复的元素。这些集合是:

  HashSet:这是一个基于哈希表的Set实现,它以O(1)的时间复杂度支持添加、删除和查询元素。它不保证元素的顺序,因为元素的存储位置是由元素的哈希值决定的。HashSet使用equals()和hashCode()方法来比较和计算元素的哈希值。

  TreeSet:这是一个基于红黑树的Set实现,它以O(log n)的时间复杂度支持添加、删除和查询元素。它保证元素按照自然顺序或者自定义顺序排序。TreeSet使用compareTo()方法来比较元素。

java不重复的集合

  LinkedHashSet:这是一个基于哈希表和链表的Set实现,它以O(1)的时间复杂度支持添加、删除和查询元素。它保证元素按照插入顺序排序,因为元素是通过链表链接的。LinkedHashSet使用equals()和hashCode()方法来比较和计算元素的哈希值。

  下面是一些简单的示例,展示了如何使用这些集合:

import java.util.*;

public class SetExample {
public static void main(String[] args) {
// HashSet example
Set<String> hashSet = new HashSet<>();
hashSet.add("apple");
hashSet.add("banana");
hashSet.add("orange");
hashSet.add("apple"); // adding duplicate element
System.out.println("HashSet: " + hashSet);

// TreeSet example
Set<Integer> treeSet = new TreeSet<>();
treeSet.add(5);
treeSet.add(3);
treeSet.add(8);
treeSet.add(3); // adding duplicate element
System.out.println("TreeSet: " + treeSet);

// LinkedHashSet example
Set<String> linkedHashSet = new LinkedHashSet<>();
linkedHashSet.add("apple");
linkedHashSet.add("banana");
linkedHashSet.add("orange");
linkedHashSet.add("apple"); // adding duplicate element
System.out.println("LinkedHashSet: " + linkedHashSet);
}
}

  在上面的示例中,我们使用三个不同的集合类型:HashSet、TreeSet和LinkedHashSet来存储字符串或整数元素。我们尝试添加重复的元素,并打印每个集合来查看它们是否保留了不重复的元素。

相关文章

python写入json文件?

python写入json文件?

2023-11-02
vscode设置tab为4个空格?

vscode设置tab为4个空格?

2023-11-02
更新pycharm?

更新pycharm?

2023-11-02
anaconda每次打开都要安装?

anaconda每次打开都要安装?

2023-11-02

最新文章

武汉新媒体行业公司排名

武汉新媒体行业公司排名

2023-11-01
武汉新媒体就业现状好吗

武汉新媒体就业现状好吗

2023-11-01
武汉全媒体行业发展现状及趋势

武汉全媒体行业发展现状及趋势

2023-10-31
武汉全媒体现状

武汉全媒体现状

2023-10-31
在线咨询 免费试学 教程领取