Collection接口详解


前言

Collection接口和Map接口是集合框架库中重要的两个接口其余框架的实现都是基于这两个接口来实现的,现在我们先来研究一下Collection接口。


提示:以下是本篇文章正文内容,下面案例可供参考

一、Collection接口是什么?

示例:此接口仅由静态方法组合或返回集合。 它包含对集合进行操作的多态算法,“包装器”,返回由指定集合支持的新集合,以及其他一些可能的和最终的。

二、Collection接口提供的方法

	这里大家可以看Api文档,讲的比我自己理解的好很多。这里我只是想顺便锻炼一下自己看英文文献的能力。并且很多不懂的我都是照搬了Api文档

1.boolean addAll(Collection<? super T> c, T… elements)

		将所有指定的元素添加到指定的集合。

2.boolean add(E e)

	向集合中添加一个元素。集合更改则添加成功返回true

3. void clear()

	清空掉集合中的所有元素

4.boolean contains(Object o)

如果集合中包含指定元素那么返回true。特别的,如果集合中也包含NULL元素的时候并且要查找的元素也是NULL的时候也返回true。

5boolean containsAll(Collection<?> c)

		如果该集合中包含指定集合中的所有元素的时候返回true。

6.boolean isEmpty()

	如果集合中没有元素返回true。

7. boolean remove(Object o)

	删除集合中的指定的元素。如果存在NULL,也删除。

8.boolean removeAll(Collection<?> c)

删除当前集合中所有等于指定集合中的元素。。

9.boolean retainAll(Collection<?> c)

仅保留该指定集合中存在的所有元素。其余删除

10. int size()

	返回该集合中元素的个数。如果超过了Integer.MAX_VALUE,那么返回Integer.MAX_VALUE。

11.Object[] toArray()

这个方法是集合和数组转化的桥梁。见名知意,返回包含此集合中所有元素的数组。如果这个集合的迭代器保证元素有序,那么该方法与其迭代器中元素顺序一致。并且该方法返回的数组是拷贝出来的(某些集合底层数组实现,区别这个),可以进行任意的更改。

12. T[] toArray(T[] a)

该方法可以对返回的数组类型进行精确控制。而非像toArray方法一样返回Object[]。
返回集合中所有元素到该数组中。如果这个数组可以容纳下的话,否则返回一个新new的数组,容量和集合中元素数量一致。如果指定的数组容量大于集合中元素个数,数组空闲位置填NULL。如果这个集合的Iterator具有顺序性的话,数组元素顺序与该迭代器一致。

13. boolean equals(Object o);

判断集合O和this集合是否相等 相等返回true 子类可以实现它的不同形式

三.Collection接口在Java8中的函数扩展

实现了Iterable接口

Iterable 接口方法介绍

Iterator iterator();

返回一个iterator迭代器

void forEach(Consumer<? super T> action)

利用lambda来实现遍历集合

Spliterator spliterator()

Spliterator是一个可分割迭代器(splitable iterator),可以和iterator顺序遍历迭代器一起看。

版权声明:本文为liangcheng0213原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。