zoukankan      html  css  js  c++  java
  • 集合框架 set list

    集合框架
            功能框架,只是一种结构
            
            collection
            List  Set
            
            List   经常用到的ArrayList  LinkedList
            
            ArrayList  数组列表:
                下标   长度
                
                从构造器来分析  ArrayList初始容量为10
                后续添加数据的过程中会继续拓展式增加当前的容量
                
            add(E e)  添加  E代表什么?E代表着所有的数据类型
            
            ArrayList  list = new ArrayList();
            list.add(1);
            list.add(true);
            list.add("String");
            list.add('A');
            
            System.out.println(list.size());
            for (int i = 0; i < list.size(); i++) {
                System.out.println(list.get(i));
            }
            
            ArrayList 获取数据的时候是使用的随机抽取机制来获得数据的
            
            查询的速度 快
            对数据操作起来 慢
            
            
            LinkedList 链表
            既然是链表那么就会让所有的数据连接在一起
            链表上的每个元素都会记载着后一个元素的存储地址
            
            查询的速度 慢
            修改数据  快
            http://blog.csdn.net/i_lovefish/article/details/8042883
            Set  常用的hashSet  TreeSet
            
            Set会去掉重复放入值
            
            HashSet集合中不可存入相同的数据但是可以存放NUll值
            TreeSet集合是有序的排列(自然顺序)中不允许存放null值会报空指针
            
            
            Map 独立的
                key-value  是按照键值对的形式存储的
                
                key不可重复  看最后一个key来决定其中要存储的是谁
                
                key值不好获取,但是key相当于我们日常中排序
                value的获取方式有两种:
                    直接将map转化称Set  迭代所有的key和value
                    直接使用collection视图来获取当前所有的value
            
            list  set  map
            
            list最为方便  set需要迭代器  map还需要转化
            
            collection  和 collections
            前一个是接口  后一个是实用类  实用类是专门对集合进行操作的
            
            
            泛型
                就是针对于引用类型再次添加上一个特殊的参数
                
                泛型用的地方用的最多的是集合
                
                提供了一个向上转型和向下转的安全机制
                
                
                ArrayList<Integer> list = new ArrayList<Integer>();
            list.add(1);
            list.add(2);
            list.add(3);
            list.add(4);
            for (Integer a : list) {
                System.out.println(a);
            }
                List<E> list = new ArrayList<E>();
                
            
            实用了泛型就可以使用增强型for循环
            不用再编写那么多的条件和初始化定义变量

  • 相关阅读:
    【python小随笔】单例模式设计(易懂版)
    【python小随笔】函数的初始化与私有化
    【python小随笔】List列表的常见函数与切片
    【itsdangerous】的加密解密原理(易懂版)
    【Django入坑之路】Django后台上传图片,以及前端的显示
    【插拔式】分页+bootstrap4(开源)
    luogu P1231 教辅的组成 |网络流最大匹配
    luogu P3376 【模板】网络最大流 |Dinic
    luogu P4177 [CEOI2008]order |最大权闭合子图
    luogu P4562 [JXOI2018]游戏 |组合数学
  • 原文地址:https://www.cnblogs.com/0280-hnn/p/6945420.html
Copyright © 2011-2022 走看看