千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > java不重复的集合

java不重复的集合

来源:千锋教育
发布人:wjy
时间: 2023-03-14 15:53:00 1678780380

  在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来存储字符串或整数元素。我们尝试添加重复的元素,并打印每个集合来查看它们是否保留了不重复的元素。

tags:
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT