• 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类型。
      

  • 相关阅读:
    HDOJ 2095 find your present (2)
    HDOJ 2186 悼念512汶川大地震遇难同胞——一定要记住我爱你
    九度 1337 寻找最长合法括号序列
    九度 1357 疯狂地Jobdu序列
    HDOJ 1280 前m大的数
    九度 1343 城际公路网
    九度 1347 孤岛连通工程
    HDOJ 2151 Worm
    九度 1342 寻找最长合法括号序列II
    九度 1346 会员积分排序
  • 原文地址:https://www.cnblogs.com/zk2020/p/14070439.html
Copyright © 2020-2023  润新知