• Java 数据结构 教程

Java 数据结构 - Set 接口



Set 是一个无序的集合,不允许重复元素。它模拟了数学集合的抽象。当我们向其中添加元素时,它会动态增长。Set 类似于数组。

Set 接口

Set 是一个不能包含重复元素的集合。它模拟了数学集合的抽象。

Set 接口仅包含从 Collection 继承的方法,并添加了不允许重复元素的限制。

Set 还对 equals 和 hashCode 操作的行为增加了更严格的契约,允许有意义地比较 Set 实例,即使它们的实现类型不同。

Set 声明的方法在以下表格中进行了总结:

序号 方法及描述
1

add( )

将对象添加到集合中。

2

clear( )

从集合中移除所有对象。

3

contains( )

如果指定的对象是集合中的元素,则返回 true。

4

isEmpty( )

如果集合没有元素,则返回 true。

5

iterator( )

返回集合的 Iterator 对象,可用于检索对象。

6

remove( )

从集合中移除指定的对象。

7

size( )

返回集合中元素的数量。

示例

Set 在 HashSet、TreeSet、LinkedHashSet 等各种类中都有实现。以下是一个解释 Set 功能的示例:

import java.util.*;
public class SetDemo {
   
   public static void main(String args[]) {
      int count[] = {34, 22,10,60,30,22};
      Set<Integer> set = new HashSet<Integer>();
      try {
         for(int i = 0; i < 5; i++) {
            set.add(count[i]);
         }
         System.out.println(set);

         TreeSet sortedSet = new TreeSet<Integer>(set);
         System.out.println("The sorted list is:");
         System.out.println(sortedSet);

         System.out.println("The First element of the set is: "+ (Integer)sortedSet.first());
         System.out.println("The last element of the set is: "+ (Integer)sortedSet.last());
      }
      catch(Exception e) {}
   }
} 

输出

[34, 22, 10, 60, 30]
The sorted list is:
[10, 22, 30, 34, 60]
The First element of the set is: 10
The last element of the set is: 60
广告