Collection集合

集合概述

集合:集合时java提供的一种容器,可以存储多个数据,重写了toString方法。

集合与数组的区别

1.数组声明了它容纳的元素的类型,而集合不声明
2.数组的长度是固定的,集合长度是改变的
3.数组的存放类型只能时一种(基本类型/引用类型),集合存放的类型可以是不是一种(不添加泛型的时候时Object类型)
4.数组是java语言中内置的数据类型,是线性排序,执行效率或者类型查询是最快的
5.集合以接口和类的形式存在具有封装,继承和多态等类的特征,通过简单的方法和调用即可是实现各种复杂的操作,大大提高软甲的开发效率

集合框架

* |----Collection接口:单列集合,用来存储一个一个的对象
* 	|----List接口:存储有序的、可重复的数据。 -->“动态”数组
* 		|----ArrayList、LinkedList、Vector
*
*	 |----Set接口:存储无序的、不可重复的数据 -->高中讲的“集合”
* 		|----HashSet、LinkedHashSet、TreeSet
*
* |----Map接口:双列集合,用来存储一对(key - value)一对的数据 -->高中函数:y = f(x)
* 	|----HashMap、LinkedHashMap、TreeMap、Hashtable、Properties

集合框架使用场景

集合根据存储结构分为两大类

  1. 单列集合 java.util.collection;

  2. 双列集合 java.util.Map;

  • Collection

    1. 定义的是所有的单列集合中共性的API方法

      所有的单列集合都可以使用共性的方法

    2. 没有带索引的方法

  • List接口

    1. 有序的集合存储何取出元素的顺序相同

    2. 允许存储相同的元素

    3. 有索引,可以普通的for循环遍历

  • Set接口

    1. 不允许存储重复性的元素
    2. 没有索引(不能使用重复的元素)
  • Collection集合常用功能

    Collection集合是所有单列集合的父类接口,在Collection集合中定义所有单列集合的共性的API方法,这些方法适用于所有的单列集合。
    boolean add​(E e)  把给定的对象添加到当前的集合中 
    	'一般情况下返回true,所以可以不用接受'
    addAll​(Collection coll)  将指定集合中的所有元素添加到此集合
    int size​() 获取集合元素的个数
    boolean isEmpty​() 判断当前集合是否为空(空是指元素)
    void clear​() 清空集合当中的所有的元素
    boolean contains​(E e) 判断当前集合当中是否包含指定的元素
    containsAll​(Collection coll) 	如果此集合包含指定集合中的所有元素,则返回 true 。 
    boolean remove​(E e)	把给定的对象从当前集合当中删除掉
    removeAll​(Collection coll)  删除指定集合中包含的此集合的元素(可选操作),低调用返回后此集合不包含与指定集合相同的元素. 
    	'参数coll()包含要从此集合中删除的元素的集合'
    retainsAll​(Collection coll) 仅保留此集合中包含在指定集合中的元素(可选操作)。 换句话说,从该集合中删除所有不包含在指定集合中的元素。
    	'参数 coll包含要保留在此集合中的元素的集合'
    equals​(Object obj) 将指定的对象与此集合进行比较以获得相等性。 
    hasCode​() 	返回此集合的哈希码值。
    Object[] toArray() 把集合中的元素,存储到一个数组中
    Iterator<E> iterator​() 返回此集合中元素的迭代器。
    //如果在创建集合时,没有指定集合存储元素的数据类型,系统或默认成Object类型。
    

原文地址:https://www.cnblogs.com/zk2020/p/14070439.html