Cccc杨

导航

Java中的集合Collection

集合:一种容器,用来存储多个数据。

  数组也是容器。

    但是长度是固定的,集合长度是可变的。

    数组可以存储基本类型(只能是同一个类型),也可以存储对象。集合存储的都是对象,而且对象的类型可以不一致。

 

学习集合的目标:

  1.会使用集合存储数据

  2.会遍历集合 把数据取出

  3.掌握每种集合的特性

 

集合框架的学习方式:

  1.学习顶层(接口或者抽象类中共性的方法)所有的子类都可以使用

  2.使用底层 顶层不是接口就是抽象类 无法创建对象使用 需要使用底层的底类创建对象使用。

 

 

ArrayList集合:底层是数组实现的,查询快,增删慢。            

linkedlist集合:底层是链表实现的,查询慢,增删快。

 

HashSet集合:底层是哈希表+红黑树实现的,无索引,不可以存储重复元素,存取无序。

LinkedHashList:底层是哈希表+链表实现的,无索引,不可以存储重复元素,可以保证存取顺序。

TreeSet:底层是二叉树实现的,用于一般排序

 

 

 

 

几个常用的方法:

        //创建集合对象 多态。接口指向实现类
        Collection<String> coll = new ArrayList<>();
        System.out.println(coll);   //[] 重写了toString方法

        //把给定的对象添加到当前集合中
        boolean b1 = coll.add("cy");
        coll.add("1");
        coll.add("2");
        System.out.println(b1);     //true 一般都是为true
        System.out.println(coll);   //被写入了元素

        //把给定对象在当前集合中删除 返回值也是Boolean值
        boolean b2 = coll.remove("2");  //true
        boolean b3 = coll.remove("8"); //false
        System.out.println(b2);
        System.out.println(b3);

        //判断当前集合中是否包含指定的对象。
        boolean b4 = coll.contains("1");
        System.out.println(b4);

        //判断是否为空
        boolean b6 = coll.isEmpty();
        System.out.println(b6);

        //返回集合中元素的个数
        int size = coll.size();
        System.out.println(size);

        //把集合变成数组
        Object[] arr = coll.toArray();

        for (Object o : arr) {
            System.out.print(o);
        }


        System.out.println();
        //清空集合中的所有元素 但是不删除集合
        coll.clear();
        System.out.println(coll);

        boolean empty = coll.isEmpty();
        System.out.println(empty);//true

 

posted on 2021-02-28 21:26  Cccc杨  阅读(51)  评论(0)    收藏  举报