Set 接口
Set集合不能包含重复的元素的集合。该模型数学抽象集合。
Set接口只包含继承自Collection的方法,并增加了重复的元素被禁止约束性。
常用方法:
add( ):将对象添加到集合。
clear( ):从集合中移除所有对象。
contains( ):如果指定的对象是集合中的元素返回true。
retainAll( ):移除未包含在指定collection中的所有元素。
isEmpty( ):如果集合不包含任何元素,则返回true。
iterator( ):返回一个Iterator对象,可用于检索对象的集合。
remove( ):从集合中删除指定的对象。
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){}
}
}
以上实例编译运行结果如下:
[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
SortedSet 接口
常用方法:
Comparator comparator( ):返回调用有序set的比较。如果自然顺序用于此set,则返回null。
Object first( ):返回调用排序集合的第一个元素。
Object last( ):返回调用排序集合的最后一个元素。
SortedSet subSet(Object start, Object end):返回一个SortedSet,包括开始和end-1之间的那些元素。
SortedSet tailSet(Object start):返回包含大于或等于启动包含在有序集合这些元素的SortedSet。
如果试图使用一个空对象和空不是在Set允许的,一个NullPointerException异常被抛出。有几种方法没有任何条目包含在调用Set的时候抛出一个NoSuchElementException异常。当一个对象是一个集合中的元素不兼容抛出一个ClassCastException异常。
实例
SortedSet有在各种类的实现,如TreeSet,下面是例子一个TreeSet类:
public class SortedSetTest {
public static void main(String[] args) {
SortedSet set = new TreeSet();
set.add("b");
set.add("c");
set.add("a");
Iterator it = set.iterator();
while (it.hasNext()) {
Object element = it.next();
System.out.println(element.toString());
}
}
}
以上实例编译运行结果如下:
a
b c
参考资料:https://www.w3cschool.cn/java/java-sortedset-interface.html