• Java 集合框架概述


    1、集合和数组的区别

    共同点:集合和数组都是用来存储多个数据的容器

    数组

      数组一旦初始化之后长度不能改变

      数组存储的元素数据类型必须一致,要么是基本数据类型,要么是引用数据类型

      数据的缺点:数组操作数据非常麻烦,没有提供管理(针对数据的增删改查)数据的方法,比如增加数据还要考虑扩容的问题

            //数组存储基本数据类型
            int[] number ={1,2,3};
            //数组存储引用数据类型
            Cellphpne[] cellphpnes = {new Cellphpne("iphone12")};

    集合

      集合的长度可以动态变化

      集合存储的数据类型只能是对象,如果你存储了基本数据类型,那么会自动装箱成基本数据类型对应的包装类

      集合可以存储任意的数据类型,在没有使用泛型的前提下,但是使用集合都是会使用泛型集合

      集合的优点:集合操作数据非常方便,JDK的开发人员针对集合操作数据提供了丰富的API,业务系统开发人员只需要掌握API的使用即可,高级程序员就要了解集合的底层实现(数据结构+算法)

            Collection collection = new ArrayList();
            collection.add(1);
            collection.add("tony");
            collection.add(3.14);
            collection.add(true);
            collection.add(new Cellphpne("iphone12"));

    由于数组长度固定,没有提供管理数据的方法,因此在日常开发中,如果要使用容器,99.99%考虑使用集合的API。

     

    2、集合框架体系结构

    集合框架体系结构也就是要搞清楚集合的常用接口,类以及类中提供方法的使用,底层源码的实现。

    集合的分类可以分为单列集合和双列集合两大类

    单列集合的使用

            //单列集合 添加的是对象
            Collection collection = new ArrayList();
            collection.add(1);
            collection.add("tony");
            collection.add(3.14);
            collection.add(true);
            collection.add(new Cellphpne("iphone12"));

    双列集合的使用

            //双列集合,添加的都是key-value键值对形式的对象
            Map<String,String> map = new HashMap<>();
            map.put("姓名","tony");
            map.put("年龄","19");

     

    单列集合体系结构

    单列结合的顶层接口是java,util.Collection,Collection下有两个子接口:List和Set

    • List
    1. ArrayList
    2. LinkedList
    3. java.util.concurrent.CopyOnWriteArrayList 并发
    • Set
    1. HashSet
    2. TreeSet
    3. LinkedHashSet
    4. java.util.concurrent.CopyOnWriteArraySet 并发

     

    双列集合体系结构

    java.util.Map接口是双列集合的顶层接口,Map接口下常用的实现类

    • HashMap
    • TreeMap
    • LinkedMap
    • ConcurrentHashMap
    • Properties

     

     集合工具

    • Iterator
    • ListIterator
    • Collections
  • 相关阅读:
    CaltrainTimes从设计到发布(基于Flex的手机应用)
    使用Flex构建Web和移动参考应用程序
    使用Flex4容器若干技巧
    移动设备外观设计的基础知识
    在移动设备应用程序中使用文本的指导原则
    在移动设备应用程序中使用软键盘
    多分辨率适配(下)
    多分辨率适配(上)
    CocosBuilder 多分辨率基础
    【2019-12-31】在逆境中锻炼自己的心态
  • 原文地址:https://www.cnblogs.com/ljknlb/p/16206721.html
Copyright © 2020-2023  润新知