集合接口是构建集合框架的基础。它声明了所有集合都将具有的核心方法。下表总结了这些方法。
由于所有集合都实现了 Collection,因此需要熟悉其方法才能清楚地了解该框架。其中有几个方法可能会引发 UnsupportedOperationException。
序号 | 方法及说明 |
---|---|
1 | boolean add(Object obj) 将 obj 添加到调用集合中。如果 obj 已添加到集合中,则返回 true。如果 obj 已经是集合的成员,或者集合不允许重复,则返回 false。 |
2 | boolean addAll(Collection c) 将 c 的所有元素添加到调用集合中。如果操作成功(即元素已添加),则返回 true。否则,返回 false。 |
3 | void clear( ) 从调用集合中删除所有元素。 |
4 | boolean contains(Object obj) 如果 obj 是调用集合的元素,则返回 true。否则,返回 false。 |
5 | boolean containsAll(Collection c) 如果调用集合包含 c 的所有元素,则返回 true。否则,返回 false。 |
6 | boolean equals(Object obj) 如果调用集合和 obj 相等,则返回 true。否则,返回 false。 |
7 | int hashCode( ) 返回调用集合的哈希码。 |
8 | boolean isEmpty( ) 如果调用集合为空,则返回 true。否则,返回 false。 |
9 | 迭代器 iterator( ) 返回调用集合的迭代器。 |
10 | boolean remove(Object obj) 从调用集合中删除 obj 的一个实例。如果元素被删除则返回 true。否则,返回 false。 |
11 | boolean removeAll(Collection c) 从调用集合中删除 c 的所有元素。如果集合发生更改(即元素被删除),则返回 true。否则,返回 false。 |
12 | boolean keepAll(Collection c) 从调用集合中删除除 c 中的元素之外的所有元素。如果集合发生更改(即元素被删除),则返回 true。否则,返回 false。 |
13 | int size( ) 返回调用集合中保存的元素数量。 |
14 | Object[ ] toArray( ) 返回一个数组,其中包含调用集合中存储的所有元素。数组元素是集合元素的副本。 |
15 | Object[ ] toArray(Object array[ ]) 返回仅包含类型与数组类型匹配的集合元素的数组。 |
示例
以下示例解释了上述集合方法的各种类实现中的一些方法
import java.util.*;
public class CollectionsDemo {
public static void main(String[] args) {
// 数组列表
List a1 = new ArrayList();
a1.add("Zara");
a1.add("Mahnaz");
a1.add("Ayan");
System.out.println(" ArrayList Elements");
System.out.print("\t" + a1);
//链表
List l1 = new LinkedList();
l1.add("Zara");
l1.add("Mahnaz");
l1.add("Ayan");
System.out.println();
System.out.println(" LinkedList Elements");
System.out.print("\t" + l1);
//哈希集
Set s1 = new HashSet();
s1.add("Zara");
s1.add("Mahnaz");
s1.add("Ayan");
System.out.println();
System.out.println(" Set Elements");
System.out.print("\t" + s1);
// HashMap
Map m1 = new HashMap();
m1.put("Zara", "8");
m1.put("Mahnaz", "31");
m1.put("Ayan", "12");
m1.put("Daisy", "14");
System.out.println();
System.out.println(" Map Elements");
System.out.print("\t" + m1);
}
}
这将产生以下结果
输出
ArrayList Elements
[Zara, Mahnaz, Ayan]
LinkedList Elements
[Zara, Mahnaz, Ayan]
Set Elements
[Ayan, Zara, Mahnaz]
Map Elements
{Daisy = 14, Ayan = 12, Zara = 8, Mahnaz = 31}