美文网首页
day14-01-集合框架(体系概述)/02-集合框架(共性方法

day14-01-集合框架(体系概述)/02-集合框架(共性方法

作者: 姗婷 | 来源:发表于2020-06-15 22:34 被阅读0次

    2:集合(Collection)(掌握)
    (1)集合的由来?
    我们学习的是Java -- 面向对象 -- 操作很多对象 -- 存储 -- 容器(数组和StringBuffer) -- 数组
    而数组的长度固定,所以不适合做变化的需求,Java就提供了集合供我们使用。
    (2)集合和数组的区别?
    A:长度区别
    数组固定
    集合可变
    B:内容区别
    数组可以是基本类型,也可以是引用类型
    集合只能是引用类型(对象,集合只用于存储对象,集合长度是可变的,集合可以存储不同类型的对象)
    C:元素内容
    数组只能存储同一种类型
    集合可以存储不同类型(其实集合一般存储的也是同一种类型)
    (3)集合的继承体系结构?
    由于需求不同,Java就提供了不同的集合类。这多个集合类的数据结构不同,但是它们都是要提供存储和遍历功能的,
    我们把它们的共性不断的向上提取,最终就形成了集合的继承体系结构图。集合框架是不断向上抽取而得到的,为什么会出现这么多的容器呢?因为每一个容器对数据的出处方式都有不同。这个存储方式可以称之为:数据结构。每个容器数据结构不同
    Collection
    |--List
    |--ArrayList
    |--Vector
    |--LinkedList
    |--Set
    |--HashSet
    |--TreeSet

    1.add方法的参数类型是Object,以便于接收任意类型对象。
    2.结合中存储的都是对象的引用(地址)

    import java.util.*;
    
    class CollectionDemo
    {
        public static void main(String[] args)
        {       
            base_method();
        }
        public static void base_method()
        {
            ArrayList al1 = new ArrayList();
            //1.添加元素字符串对象
            al1.add("java01");//addd(Object obj);
            al1.add("java02");
            al1.add("java03");
            al1.add("java04");
            
            ArrayList al2 = new ArrayList();
            //1.添加元素字符串对象
            al2.add("java01");//addd(Object obj);
            al2.add("java02");
            al2.add("java05");
            al2.add("java06");
            
            all.removeAll(al2);//相同元素会被删除
    
            al1.retainAll(al2);//取交集,al1中只保留和a12中相同的元素
            
            sop("al1"+al1);//取交集,al1结果是al1[java01, java02]
            sop("al2"+al2);
        }
        
        public static void method()
        {
            //创建一个集合容器。使用collection接口的子类。ArrayList
            ArrayList al = new ArrayList();
            //1.添加元素字符串对象
            al.add("java01");//addd(Object obj);
            al.add("java02");
            al.add("java03");
            al.add("java04");
            
            //打印原集合
            sop("原集合"+al);
    
            //al.clear();//清空集合
            
            //3.删除元素
            //al.remove("java02");
            
            //4.判断元素
            sop("java03是否存在:"+al.contains("java03"));
            sop("集合是否为空?"+al.isEmpty());
            
            //2.获取个数集合长度
            sop("size:"+al.size());
            
            //打印改变后的集合
            sop(al);
        }
        public static void sop(Object obj)
        {       
            System.out.println(obj);    
        }
    }
    

    相关文章

      网友评论

          本文标题:day14-01-集合框架(体系概述)/02-集合框架(共性方法

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