Java 教程

Java 控制语句

面向对象编程

Java 内置类

Java 文件处理

Java 错误和异常

Java 多线程

Java 同步

Java 网络编程

Java 集合

Java 接口

Java 数据结构

Java 集合算法

高级 Java

Java 杂项

Java API 和框架

Java 类引用

Java 有用资源

Java - Set 接口



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

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

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

Set 接口方法

Set声明的方法总结在下表中:

序号 方法和描述
1

add( )

将对象添加到集合中。

2

clear( )

从集合中删除所有对象。

3

contains( )

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

4

isEmpty( )

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

5

iterator( )

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

6

remove( )

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

7

size( )

返回集合中元素的数量。

Set 接口示例

Set 在各种类中都有实现,例如 HashSetTreeSetLinkedHashSet。以下是 Java 中 Set 接口的一些实现。

使用 HashSet 实现 Set 的示例

以下是一个使用 HashSet 解释 Set 功能的示例:

import java.util.HashSet;
import java.util.Set;

public class SetDemo {

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

输出

[34, 22, 10, 60, 30]

使用 TreeSet 实现 Set 的示例

以下是一个使用 TreeSet 解释 Set 功能的示例:

import java.util.HashSet;
import java.util.Set;
import java.util.TreeSet;

public class SetDemo {

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

         TreeSet<Integer> sortedSet = new TreeSet<>(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

使用 LinkedHashSet 实现 Set 的示例

以下是一个使用 LinkedHashSet 操作解释 Set 功能的示例:

import java.util.LinkedHashSet;
import java.util.Set;

public class SetDemo {

  public static void main(String args[]) { 
      int count[] = {34, 22,10,60,30,22};
      Set<Integer> set = new LinkedHashSet<>();
      try {
         for(int i = 0; i < 5; i++) {
            set.add(count[i]);
         }
         System.out.println(set);
      }
      catch(Exception e) {}
   }
}  

输出

[34, 22, 10, 60, 30]
java_collections.htm
广告