美文网首页Java基础
Java集合框架概述

Java集合框架概述

作者: 黄金矿工00七 | 来源:发表于2018-07-20 17:55 被阅读13次

集合框架使我们开发应用时不可缺少的工具,首先我们要明白,集合是什么?
集合代表了一组具有共同属性的对象,集合框架则定义了一套规范,用来表示、操作集合,使具体操作与实现细节解耦,为我们提供了囊括全部集合接口、实现和算法。

  • 集合框架体系
    集合框架总体上分为了两大块:Collection和Map,jdk为我们提供了这两个基本的接口,所有的集合实现类都基于它们。
  • Collection:它提供了对集合对象进行基本操作的通用接口方法
    先来看一下jdk源码中的介绍;
 * The root interface in the <i>collection hierarchy</i>.  A collection
 * represents a group of objects, known as its <i>elements</i>.  Some
 * collections allow duplicate elements and others do not.  Some are ordered
 * and others unordered.  The JDK does not provide any <i>direct</i>
 * implementations of this interface: it provides implementations of more
 * specific subinterfaces like <tt>Set</tt> and <tt>List</tt>.  This interface
 * is typically used to pass collections around and manipulate them where
 * maximum generality is desired.
 *
 * <p><i>Bags</i> or <i>multisets</i> (unordered collections that may contain
 * duplicate elements) should implement this interface directly

集合框架的根接口,集合是一组对象的表示(对象叫做元素),一些集合实现允许重复元素,一些不允许,一些有序......JDK没有提供这个接口的任何直接实现,而是提供了更多细节性的接口(也就是具体化的接口,例如List),这个接口传递集合类给Collections(集合操作的工具类),用来为各种具体的集合提供最大化的统一操作方式。

  • Collections:一个包装类(工具类/帮助类)。它包含有各种有关集合操作的静态多态方法。此类不能实例化,就像一个工具类,用于对集合中元素进行排序、搜索以及线程安全等各种操作,服务于Java的Collection框架。
    简而言之:假设集合是一个微型数据库(不同类型),Collection则为我们提供CRUD的通用接口方法
    我们来看一张Collection的简易体系图
    图片.png
  • Collection接口主要有三个子接口:
    • List:List表示允许有重复元素的集合(An ordered collection (also known as a sequence))
    • Set:Set表示不允许有重复元素的集合(A collection that contains no duplicate elements)
    • Queue:Queue主要用于存储数据,而不是处理数据。(A collection designed for holding elements prior to processing.)
  • Java8新增接口方法:(在后续文章中会详细介绍)
  default 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);
  • Map:表示一组key-value对


    图片.png

Map并不是一个真正意义上的集合(are not true collections),但是这个接口提供了三种“集合视角”(collection views ),使得可以像操作集合一样操作它们,具体如下:
- key的集合: map's contents to be viewed as a set of keys
- value的集合:map’s contents to be viewed as a collection of value
- key-value映射(Entry)的集合:map’s contents to be viewed as a set of key-value mappings

  • Collections : 集合操作类
    它包含有各种有关集合操作的静态多态方法。此类不能实例化,就像一个工具类,用于对集合中元素进行排序、搜索以及线程安全等各种操作,服务于Java的Collection框架。

相关文章

  • Java基础知识点(九)

    一、Java 中的集合框架(上) 1、Java 中的集合框架概述 JAVA集合框架体系结构:Collection与...

  • JavaSE集合类

    JavaSE集合类 概述 Java中集合类概述Java中数组与集合的比较Java中集合框架层次结构 Collect...

  • Java集合框架01-框架总览

    本节摘要:从整体概述Java集合框架 一、Java集合框架架构图 Java集合框架是Java为开发者提供的工具类,...

  • java.util 之Collection源码分析

    在java.util 概述之集合框架中,我们简单了解了java的集合框架。现在让我们从源头上分析java集合框架的...

  • 集合系列(一):集合框架概述

    集合系列(一):集合框架概述 Java 集合是 Java API 用得最频繁的一类,掌握 Java 集合的原理以及...

  • Java 集合框架总结(一)

    集合概述 Java集合框架标准化了Java处理对象组的方式。Java集合框架在JDK1.2版本提出,在JDK1.5...

  • 深入学习java系列之集合框架

    集合概述 java 集合部分主要有 java 集合框架相关的内容和 java 泛型相关的内容。 集合是用来做什么的...

  • java中collection框架应用示例:学生选课系统

    java中集合框架概述 collection集合框架存储对象,有多个接口list,queue,set。他们对应的重...

  • Java集合框架概述

    集合框架使我们开发应用时不可缺少的工具,首先我们要明白,集合是什么?集合代表了一组具有共同属性的对象,集合框架则定...

  • Java集合框架概述

    前言 Java集合框架概述; 主要总述Java集合框架的设计理念, 组成和基本接口(及其区别等) 博客同步至个人博...

网友评论

    本文标题:Java集合框架概述

    本文链接:https://www.haomeiwen.com/subject/uwdqmftx.html