Java Set集合
Java Set集合是一种无序的集合,不允许包含重复元素。它是Java集合框架中的一部分,实现了java.util.Set接口。
Set集合的特点有:
1. 无序性:Set集合中的元素没有固定的顺序。
2. 唯一性:Set集合中的元素不能重复,即相同的元素只能出现一次。
3. 实现类:Java提供了多个实现Set集合接口的类,如HashSet、TreeSet和LinkedHashSet。
HashSet是基于哈希表实现的Set集合,它使用hashCode值来存储和访问元素,具有快速的插入、删除和查找操作,但不保证集合中元素的顺序。
TreeSet是基于红黑树实现的Set集合,它对元素进行排序并保持有序状态,对于需要有序的需求可以选择使用TreeSet。
LinkedHashSet是基于哈希表和链表实现的Set集合,它维护了元素的插入顺序,对于需要保持插入顺序的需求可以选择使用LinkedHashSet。
示例代码如下所示:
import java.util.HashSet;
import java.util.Set;
public class SetExample {
public static void main(String[] args) {
Set<String> set = new HashSet<>();
set.add("apple");
set.add("banana");
set.add("orange");
set.add("apple"); // 重复元素,不会被添加进集合
System.out.println(set); // 输出结果:[banana, orange, apple]
}
}
在上面的代码中,我们创建了一个HashSet集合,并添加了几个元素。由于HashSet不保证元素的顺序,所以输出的结果可能与添加的顺序不一致,并且重复的元素"apple"只会出现一次。