美文网首页
2023-11-21第05章_数组

2023-11-21第05章_数组

作者: 大也 | 来源:发表于2023-11-26 18:23 被阅读0次

    -- ---------------------- 本章概况
    -- ---------------------- 课件
    -- ---------------------- 随堂复习与企业真题
    -- ---------------------- 拓展练习

    -- ---------------------- 本章概况


    1700528266016.jpg
    1700528290039.jpg

    -- ---------------------- 课件

    1. 数组的概述(1.1 为什么需要数组/1.2 数组的概念/1.3 数组的分类)
    - 数组本身是`引用数据类型`,而数组中的元素可以是`任何数据类型`,包括基本数据类型和引用数据类型。
    - 创建数组对象会在内存中开辟一整块`连续的空间`。占据的空间的大小,取决于数组的长度和数组中元素的类型。
    - 数组中的元素在内存中是依次紧密排列的,有序的。
    - 数组,一旦初始化完成,其长度就是确定的。数组的`长度一旦确定,就不能修改`。
    - 我们可以直接通过下标(或索引)的方式调用指定位置的元素,速度很快。
    - 数组名中引用的是这块连续空间的首地址。
    
    1. 一维数组的使用(2.1一维数组的声明/2.2 一维数组的初始化/2.3 一维数组的使用/2.4 一维数组的遍历[for]/2.5 数组元素的默认值)
            String[] foods = new  String[]{'拌海蜇','龙须菜','炝冬笋',"玉兰片"}; //静态
            String [] foods = new  String[4];//动态
             foods[0] = '炝冬笋'; //调用  越界概念
    
    对于引用数据类型而言,默认初始化值为null(注意与0不同!)
    其余都是0。最多加个f/l
    
    1. 一维数组内存分析(3.1 Java虚拟机的内存划分/3.2 一维数组在内存中的存储)
    弹匣 式 入栈 出栈  数组开辟空间new  变量名存储地址值首位  
    
    1. 一维数组的应用

    2. 多维数组的使用(5.1 概述/5.2 声明与初始化/5.3 数组的长度和角标/5.4 二维数组的遍历/5.5 内存解析/5.6 应用举例)

    3. 数组的常见算法(6.1 数值型数组特征值统计/6.2 数组元素的赋值与数组复制/6.3 数组元素的反转/6.4 数组的扩容与缩容/6.5 数组的元素查找/6.6 数组元素排序)

    数组的扩容与缩容
    扩容:其实就是新造数组 new 然后再转移值
    缩容:X位后 向前覆盖
    
    1. Arrays工具类的使用
    //1. boolean equals(int[] a,int[] b):比较两个数组的元素是否依次相等
            int[] arr1 = new  int[]{1,2,3,4,5};
    //      int[] arr2 = new  int[]{1,2,3,4,5};
            int[] arr2 = new  int[]{1,2,3,5,4};
            boolean isEqual = Arrays.equals(arr1,arr2);
            System.out.println(isEqual);
    
            //2. String toString(int[] a):输出数组元素信息。
            System.out.println(arr1);
            System.out.println(Arrays.toString(arr1));
    
            //3.void fill(int[] a,int val):将指定值填充到数组之中。
            Arrays.fill(arr1,10);
            System.out.println(Arrays.toString(arr1));
    
            //4. void sort(int[] a):使用快速排序算法实现的排序
            int[] arr3 = new int[]{34,53,3,2,65,7,34,5,76,34,67};
            Arrays.sort(arr3);
            System.out.println(Arrays.toString(arr3));
    
            //5. int binarySearch(int[] a,int key):二分查找
            //使用前提:当前数组必须是有序的
            System.out.println(Arrays.binarySearch(arr3,34));
    
    1. 数组中的常见异常(8.1 数组角标越界异常/8.2 空指针异常)
    数组越界 
    空指针 null
    

    -- ---------------------- 随堂复习与企业真题

    1. 数组的概述

    > 数组的声明和初始化
        int[] arr = new int[10];
        String[] arr1 = new String[]{"Tom","Jerry"};
    > 调用数组的指定元素:使用角标、索引、index
        >index从0开始!
    > 数组的属性:length,表示数组的长度
    > 数组的遍历
    > 数组元素的默认初始化值
    > 一维数组的内存解析(难)
        前提:在main()中声明变量:int[] arr = new int[]{1,2,3};
        > 虚拟机栈:main()作为一个栈帧,压入栈空间中。在main()栈帧中,存储着arr变量。arr记录着数组实体的首地址值。
        > 堆:数组实体存储在堆空间中。
    
    1. 一维数组的使用(重要)
    > 数组的声明和初始化
        int[] arr = new int[10];
        String[] arr1 = new String[]{"Tom","Jerry"};
    > 调用数组的指定元素:使用角标、索引、index
        >index从0开始!
    > 数组的属性:length,表示数组的长度
    > 数组的遍历
    > 数组元素的默认初始化值
    > 一维数组的内存解析(难)
        前提:在main()中声明变量:int[] arr = new int[]{1,2,3};
        > 虚拟机栈:main()作为一个栈帧,压入栈空间中。在main()栈帧中,存储着arr变量。arr记录着数组实体的首地址值。
        > 堆:数组实体存储在堆空间中。
    
    1. 二维数组的使用(难点)
    > 数组的声明和初始化
    > 调用数组的指定元素
    > 数组的属性:length,表示数组的长度
    > 数组的遍历
    > 数组元素的默认初始化值
    > 二维数组的内存解析(难)
    
    1. 数组的常用算法(重要)
    2. Arrays工具类的使用
    toString() / sort() / binarySearch()
    
    1. 数组中的常见异常
    - ArrayIndexOutOfBoundsException
    - NullPointerException
    

    相关文章

      网友评论

          本文标题:2023-11-21第05章_数组

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