Set集合详解

Set集合

set集合的概述
  • set集合不可以存放重复元素,元素的存取是无序的。
如何选择Set集合及其子类
  • set -->不保留存储顺序并且去掉重复元素
  • TreeSet -->适用于元素排序
  • HashSet -->如果不需要排序请选我,比TreeSet效率高
  • LinkedHashSet -->如果需要保留存储顺序,又要过滤重复元素选择我。

HashSet

1.HashSet的概述
  • 此类实现了set接口,由哈希表支持,它不保证set的迭代顺序,此类允许使用null元素
2.HashSet的特点
  • 无序的集合,存储和取出的顺序不同,没有索引,不存储重复的数据
  • 底层的数据结构是哈希表(链表和数组的结合体)
  • 存储和取出都比较快
  • 线程不安全的

Comparator和Comparable的用法

1.Comparable的概述
  • 该接口强行对实现它的每一个类的对象进行整体排序,Java中称这种排序为自然排序。实现此接口的对象列表(和数组)可以通过 Collections.sort(和 Arrays.sort )进行自动排序。
  • 类的 compareTo方法被称为它的自然比较方法 。
2.Comparable的方法
public int compareTo(T o);
如果x < y, 返回-1;如果x = y, 返回0;如果x > y, 返回1。

猜你喜欢

转载自blog.csdn.net/xiayubao7788/article/details/88877844