Java Set接口
Set 集合不能包含重复的元素的集合。该模型数学抽象集合。
Set接口只包含继承自Collection的方法,并增加了重复的元素被禁止约束性。
集还增加了对equals和hashCode操作的行为更强的契约,允许Set集合实例进行有意义的比较,即使他们的实现类型不同。
通过Set集声明的方法总结如下表:
SN | 方法及描述 |
---|---|
1 |
add( ) 将对象添加到集合 |
2 |
clear( ) 从集合中移除所有对象 |
3 |
contains( ) 如果指定的对象是集合中的元素返回true |
4 |
isEmpty( ) 如果集合不包含任何元素,则返回true |
5 |
iterator( ) 返回一个Iterator对象,可用于检索对象的集合 |
6 |
remove( ) 从集合中删除指定的对象 |
7 |
size( ) 返回元素集合中的数 |
例子:
Set 集有其不同的类,如HashSet,TreeSet,LinkedHashSet 实现。以下为例子来说明集功能:
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){} } }
这将产生以下结果:
[amrood]$ java SetDemo [34, 30, 60, 10, 22] 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