Java 集合详解 一、Collection详解
来源:互联网 发布:听歌软件免费 编辑:程序博客网 时间:2024/06/05 05:03
在Java开发中,我们有大量的保存、访问数据的需求,这时候就需要使用java中的集合类,一般来说,java中提供了list、set、map这些集合来供我们保存、访问数据。
java中集合类的继承图如下:
可见,list、set都实现了Collection接口,而Map都实现了Map接口,今天,我们从源码分析一下Collection接口:
一、Collection 继承的接口:
public interface Collection<E> extends Iterable<E> {}
Iterable接口源码为:
public interface Iterable<T> { /** * Returns an iterator over elements of type {@code T}. * * @return an Iterator. */ Iterator<T> iterator(); default void forEach(Consumer<? super T> action) { Objects.requireNonNull(action); for (T t : this) { action.accept(t); } } default Spliterator<T> spliterator() { return Spliterators.spliteratorUnknownSize(iterator(), 0); }}
首先可以看到,Collection实现了Iterable接口,即可以通过iterator()方法来获取这个集合的迭代器来遍历这个集合,或者删除这个集合中的元素。
二、Collection定义的方法:
返回这个集合的大小:
int size();判断这个集合是否为空:
boolean isEmpty();是否包含某个元素:
boolean contains(Object o);将集合中的数据转成列表形式
Object[] toArray();将集合中的数据放置到传入的数组中
<T> T[] toArray(T[] a);添加元素,返回值为是否添加成功
boolean add(E e);删除集合中的元素:
boolean remove(Object o);判断集合中是否包含传入的集合的所有元素:
boolean containsAll(Collection<?> c);添加传入的集合中所有的元素:
boolean addAll(Collection<? extends E> c);清除所有也处在传入的集合中的元素:
boolean removeAll(Collection<?> c);只保留也处在传入的集合中的元素:
boolean retainAll(Collection<?> c);
清除所有元素:
void clear();
阅读全文
2 0
- Java 集合详解 一、Collection详解
- Java集合详解(一):Collection
- Java集合类型Collection详解
- Java集合详解Collection、Map
- Java集合详解(一) —— Collection与Map概述
- Java Collection详解,Java中的集合框架Collection上
- Java Collection详解,Java中的集合框架Collection下
- JAVA集合详解(Collection和Map接口)
- JAVA集合详解(Collection和Map接口)
- java之集合Collection详解之2
- java之集合Collection详解之3
- java之集合Collection 详解之4
- JAVA集合详解(Collection和Map接口)
- Java 集合Collection与List的详解
- Java Collection集合框架关系详解
- Java 集合Collection与List的详解
- Java 集合Collection与List的详解
- Collection集合详解
- Qt实现画饼图
- Windows & Linux 对拍
- java.lang.NoSuchMethodError: org.hibernate.internal.CoreMessageLogger.debugf(Ljava/lang/String;I)V
- 【洛谷1032 】【CJOJ1711】【NOIP2002】字串变换
- 使用ProGround混淆工具混淆jar包
- Java 集合详解 一、Collection详解
- 希尔排序(Shell Sort)——插入排序法(Java实现)
- JZOJ100046. 【NOIP2017提高A组模拟7.14】收集卡片
- 构造函数与代码块
- 莫队算法总结
- JNI笔记
- 【QT】调试心得(3)
- JS实现原生Ajax原理图
- [BZOJ2120]数颜色{带修改莫队}