JAVA-容器(2)-Collection
(基于JDK1.8源码分析)
一,Collection
所有实现Collection接口的类原则上应该提供两种构造函数:
【1】无参构造-创建一个空的容器
【2】有参构造-创建一个新的Collection,这个新的Collection和传入的Collection具有相同的元素
二,源码分析
public interface Collection<E> extends Iterable<E> { /** 集合大小 */int size();/** 是否为空 */boolean isEmpty();/** 是否包含指定元素 */boolean contains(Object o);/** 返回用于遍历集合的迭代器*/Iterator<E> iterator();/** 将集合转为数组*/Object[] toArray();/** 将集合转为指定类型数组*/<T> T[] toArray(T[] a);/** 新增元素 */boolean add(E e);/** 删除元素*/boolean remove(Object o); /** 集合中是否包含C集合中的元素*/boolean containsAll(Collection<?> c);/** 新增集合元素*/boolean addAll(Collection<? extends E> c);/** 集合中删除C集合中有的元素*/boolean removeAll(Collection<?> c);/***/default boolean removeIf(Predicate<? super E> filter) {Objects.requireNonNull(filter);boolean removed = false;final Iterator<E> each = iterator();while (each.hasNext()) {if (filter.test(each.next())) {each.remove();removed = true;}}return removed;}/** 集合中只保留C集合中的元素*/boolean retainAll(Collection<?> c);/** 清空集合元素*/void clear(); /** 比较集合元素是否相同*/boolean equals(Object o);/** 计算哈希码*/int hashCode();/***/@Overridedefault Spliterator<E> spliterator() {return Spliterators.spliterator(this, 0);}/***/default Stream<E> stream() {return StreamSupport.stream(spliterator(), false);}/***/default Stream<E> parallelStream() {return StreamSupport.stream(spliterator(), true);} }
转载于:https://www.cnblogs.com/wanhua-wu/p/6652901.html
JAVA-容器(2)-Collection相关推荐
- 【Java心得总结六】Java容器中——Collection
在[Java心得总结五]Java容器上--容器初探这篇博文中,我对Java容器类库从一个整体的偏向于宏观的角度初步认识了Java容器类库.而在这篇博文中,我想着重对容器类库中的Collection容器 ...
- Java容器-面试题
1. Java 容器都有哪些? Java 容器分为 Collection 和 Map 两大类,其下又有很多子类,如下所示: Collection List ArrayList LinkedList V ...
- java容器都有哪些
java容器有:ArrayList.LinkedList.Vector.HashSet.LinkedHashSet.TreeSet.LinkedHashMap.TreeMap.ConcurrentHa ...
- java 容器都有哪些?
目录 18.java 容器都有哪些? 19.Collection 和 Collections 有什么区别? 20.List.Set.Map 之间的区别是什么? 21.HashMap 和 Hashtab ...
- java容器系列一(java容器Collection概述)
一,Collection容器继承关系图 java容器可谓是学习java必不可少的一部分.日常开发天天用.说起来特别惭愧,原来为了面试囫囵吞枣的看源码,但一直没有理清java容器.特此写这篇博客梳理常用 ...
- java 容器_Java容器框架学习整理
一:容器框架概述 1.什么是容器 2.Java 中的容器 二:Collectoin 容器 1.Collection 接口定义 2.Collection 三个重要的子接口 List.Set.Queue ...
- Java知识点总结(Java容器-EnumSet)
Java知识点总结(Java容器-EnumSet) @(Java知识点总结)[Java, Java容器, JavaCollection, JavaSet] EnumSet EnumSet是一个专为枚举 ...
- java 容器_java容器考点总结和源码剖析!!!
出自:https://github.com/CyC2018/CS-Notes 一.概览 Collection Map 二.容器中的设计模式 迭代器模式 适配器模式 三.源码分析 ArrayList V ...
- java 容器_我也来聊聊,JAVA容器与迭代器
java的容器与迭代器是一个老生常谈的话题了. 本文旨在与大家分享一些关于双向链表与迭代器的运用小技巧,并希望本篇文章的内容能够在项目中给你带来帮助. Stack与LinkedList Stack是一 ...
- 后端学习 - Java容器
文章目录 一 简介 二 底层数据结构总结 1 List 2 Set 3 Queue 4 Map 三 Collection 的子接口 List 1 ArrayList 与 Vector 2 ArrayL ...
最新文章
- 基于YOLOV5的数据集标注&训练,Windows/Linux/Jetson Nano多平台部署全流程
- 关于cisco与中兴三层设备ospf互连
- vue-cli4脚手架搭建实战教程
- 自学Java5.19
- Java精确到毫秒获取时间的三种方法,以及适用场景
- Eclipse c++ 中[Linker error] undefined reference to `WSAStartup@8'的解决办法
- 命令行下的curl使用详解
- 最全三大框架整合(使用映射)——IDeptDao.java
- Sudoku Extension UVALive - 4763
- 中缀表达式转换成后缀表达式(只适用于加减乘除运算)
- 【React深入】setState的执行机制
- 【UVa】Wavio Sequence(dp)
- ubuntu安装 gcc 5.4.0
- 三大特征 六大原则结合实践运用
- python3爬虫实战一: 爬取豆瓣最新上映电影及画出词云分布
- 网红品牌终将祛魅,而伊利、康师傅这些老司机们却仍然历久弥新
- oracle开机自启
- excel之高级筛选与VLOOKUP函数
- win10总是很快自动休眠,设置休眠时间也无效?
- 【我的读书】《薛兆丰经济学讲义》助你变得更理性、悦纳和进取