2021-05-06集合框架

集合和数组的区别

数组:长度固定的;可以储存基本数据类型;对象必须是相同类型的数组。
集合:长度是可变的;只能用于储存对象的引用;对象可以是不同类型的数据。

Arraylist

Arraylist支持可随需要而增长的动态数组。一般情况查询速度块,增删速度慢。

package list;

import java.util.ArrayList;

/**
 * @qvthor liuwenzheng
 * @date 2021/5/6 17:12
 */
public class ArrayListDemo01 {
    public static void main(String[] args) {
        String[] array01 = new String[10];
        array01[0] = "zhangsan";
        array01[1] = "lisi";
        array01[2] = "wangwu";
        ArrayList<Object>list01 = new ArrayList<>(); //数组列表
        list01.add("zhangsan");
        list01.add("lisi");
        list01.add("wangwu");
        System.out.println(list01);
        // 2 删除
        list01.remove(1);
        System.out.println(list01);
        // 3 修改
        list01.set(1,"xaiowu");
        System.out.println(list01);
        // 4  查询
        for (Object l : list01){
            System.out.println(l + "\t");
        }
        // 5 求长度
        System.out.println(list01.size());
        // 6 清空
        list01.clear();
        System.out.println(list01.size());
        System.out.println(list01.isEmpty());
        // 7 addAll()
        ArrayList<Object>list02 = new ArrayList<>();
        list02.add(111);
        list02.add(222);
        list01.addAll(1,list02);
        System.out.println(list01);
    }
}

Linked

LinkedList是Link的双向数据结构,也可以当作堆栈。队列,双端队列。链表是一种在物理上非连续、非顺序的数据结构,有若干个点所组成。

package list;

import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;

/**
 * @qvthor liuwenzheng
 * @date 2021/5/6 18:16
 */
public class LinkedListDemo02 {
    public static void main(String[] args) {
    LinkedList<Object>list01 = new LinkedList<>(); // 链表方式实现
            list01.add("zhangsan");
            list01.add("lisi");
            list01.add("wangwu");
            System.out.println(list01);
            // 2 删除
            list01.remove(1);
            System.out.println(list01);
            // 3 修改
            list01.set(1,"xaiowu");
            System.out.println(list01);
            // 4  查询
            for (Object l : list01){
                System.out.println(l + "\t");
            }
            // 5 求长度
            System.out.println(list01.size());
            // 6 清空
            list01.clear();
            System.out.println(list01.size());
            System.out.println(list01.isEmpty());
            // 7 addAll()
            ArrayList<Object>list02 = new ArrayList<>();
            list02.add(111);
            list02.add(222);
            list01.addAll(1,list02);
            System.out.println(list01);
            //将数据添加到末尾
        list01.addLast(111);
        }
}



上一篇:Unity 镜子效果


下一篇:Python函数04/生成器/推导式/内置函数