今天和大家分享 Collection 类能够执行的方法,这些方法同样适用于实现了 Collection 接口的 Set 和 List 。
1.添加单个元素add(T) 用于添加持有泛型 T 的参数。
public static void main(String[] args) {
Collection c = new ArrayList();
c.add("China");
System.out.println(c);
}
[China]2.批量添加元素
addAll(Collection extends T>) 用于批量添加元素。
public static void main(String[] args) {
Collection c = new ArrayList();
ArrayList arrayList = new ArrayList<>();
arrayList.add("China");
arrayList.add("USA");
arrayList.add("UK");
c.addAll(arrayList);
System.out.println(c);
}
[China, USA, UK]3.清空元素
clear() 用于清空容器内元素。
public static void main(String[] args) {
String[] countries = {"China", "USA", "UK"};
Collection c = new ArrayList(Arrays.asList(countries));
System.out.println(c);
c.clear();
System.out.println(c);
}
[China, USA, UK] []4.移除指定元素
remove(Object) 移除指定元素,若元素在容器内,则进行移除返回 true,否则返回 false。
public static void main(String[] args) {
String[] countries = {"China", "USA", "UK"};
Collection c = new ArrayList(Arrays.asList(countries));
System.out.println(c);
System.out.println(c.remove("UK"));
System.out.println(c.remove("Russia"));
System.out.println(c);
}
[China, USA, UK] true false [China, USA]5.批量移除元素
remove(Collection>) 可批量移除参数中的所有元素,只有执行任何一个元素的移除操作则返回 true,否则返回 false。
public static void main(String[] args) {
String[] countries = {"China", "USA", "UK", "Russia", "Korea"};
Collection c = new ArrayList(Arrays.asList(countries));
System.out.println(c);
ArrayList
[China, USA, UK, Russia, Korea] true false [China, Russia]6.获取元素数目
size() 可获取容器内元素的数目。
public static void main(String[] args) {
String[] countries = {"China", "USA", "UK", "Russia", "Korea"};
Collection c = new ArrayList(Arrays.asList(countries));
System.out.println(c.size());
}
57.遍历元素
iterator() 返回一个 Iterator
public static void main(String[] args) {
String[] countries = {"China", "USA", "UK", "Russia", "Korea"};
Collection c = new ArrayList(Arrays.asList(countries));
Iterator iterator = c.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
}
China USA UK Russia Korea8. 判断容器是否为空
isEmpty() 当容器内没有元素的时候返回 true ,否则返回 false。
public static void main(String[] args) {
String[] countries = {"China", "USA", "UK", "Russia", "Korea"};
Collection c = new ArrayList(Arrays.asList(countries));
System.out.println(c.toString());
System.out.println(c.isEmpty());
c.clear();
System.out.println(c.isEmpty());
}
[China, USA, UK, Russia, Korea] false true9.获取元素交集
retainAll(Collection>) 只保存参数中的元素,相当于获取两者的交集。
public static void main(String[] args) {
String[] countries = {"China", "USA", "UK", "Russia", "Korea"};
Collection c = new ArrayList(Arrays.asList(countries));
System.out.println(c);
ArrayList
[China, USA, UK, Russia, Korea] [USA, UK, Japan] [USA, UK]10.获取容器构成的数组
toArray() 会返回包含所有元素的 Object 数组。
public static void main(String[] args) {
String[] countries = {"China", "USA", "UK", "Russia", "Korea"};
Collection c = new ArrayList(Arrays.asList(countries));
Object[] objects = c.toArray();
System.out.println(Arrays.toString(objects));
}
[China, USA, UK, Russia, Korea]
假如我们需要返回相同类型参数的数组,则需要传入对应类型参数的数组作为参数,如
public static void main(String[] args) {
String[] countries = {"China", "USA", "UK", "Russia", "Korea"};
Collection c = new ArrayList(Arrays.asList(countries));
String[] s1 = c.toArray(new String[0]);
System.out.println(Arrays.toString(s1));
String[] s2 = c.toArray(new String[10]);
System.out.println(Arrays.toString(s2));
}
[China, USA, UK, Russia, Korea] [China, USA, UK, Russia, Korea, null, null, null, null, null]
本次分享至此结束,希望本文对你有所帮助,若能点亮下方的点赞按钮,在下感激不尽,谢谢您的【精神支持】。
若有任何疑问,也欢迎与我交流,若存在不足之处,也欢迎各位指正!



