set集合不能存储相同的元素
同时因为其是一个抽象的接口:所以不能直接实例化一个set对象。(Set s = new Set() )错误
该接口主要继承于Collections接口,所以具有Collection的一些常见的方法。
常见用法
Sr.No.Method & Description1 add( ) 向集合中添加元素 2 clear( ) 去掉集合中所有的元素 3 contains( ) 判断集合中是否包含某一个元素 4 isEmpty( ) 判断集合是否为空 5 iterator( ) 主要用于递归集合,返回一个Iterator()对象 6 remove( ) 从集合中去掉特定的对象 7 size( ) 返回集合的大小
Set接口最长用的两大实现:HashSet TreeSet
1、HashSet类(散列存放)
Java.util.HashSet类实现了Java.util.Set接口。
l 它不允许出现重复元素;
l 不保证和政集合中元素的顺序
l 允许包含值为null的元素,但最多只能有一个null元素。
import java.util.Date;
import java.util.HashSet;
import java.util.Iterator;
public class TestHashSet
{
public static void main(String [] args)
{
HashSet h=new HashSet();
h.add("1st");
h.add("2nd");
h.add(new Integer(3));
h.add(new Double(4.0));
h.add("2nd"); //重复元素,未被添加
h.add(new Integer(3)); //重复元素,未被添加
h.add(new Date());
System.out.println("开始:size="+h.size());
Iterator it=h.iterator();
while(it.hasNext())
{
Object o=it.next();
System.out.println(o);
}
h.remove("2nd");
System.out.println("移除元素后:size="+h.size());
System.out.println(h);
}
}
2、TreeSet(有序存放)
TreeSet描述的是Set的一种变体——可以实现排序等功能的集合,它在讲对象元素添加到集合中时会自动按照某种比较规则将其插入到有序的对象序列中,并保证该集合元素组成的读uixiangxulie时刻按照“升序”排列。
import java.util.TreeSet;
import java.util.Iterator;
public class TestTreeSet
{
public static void main(String [] args)
{
TreeSet ts=new TreeSet();
ts.add("orange");
ts.add("apple");
ts.add("banana");
ts.add("grape");
Iterator it=ts.iterator();
while(it.hasNext())
{
String fruit=(String)it.next();
System.out.println(fruit);
}
}
}
Java中三种Set类型用法、性能大比拼 - 云+社区 - 腾讯云
https://cloud.tencent.com/developer/article/1045683