9-23程宗武

9-23

/*
##数组的概述:
    *数组的理解:是多个相同类型的数据按一定顺序排列的集合
    *数组的相关概念:
        *数组名
        *数组的元素
        *角标、下标、索引
        *数组的长度:元素的个数
    *数组的特点:
        *数组是有序排列的
        *数组属于引用数据类型的变量。数组的元素即可以是基本数据类型,也可以是引用数据类型
        *创建数组对象会在内存中开辟一整块连续的空间
        *数组的长度一旦确定,就不能修改
    *数组的分类:
        *按照维数:一维数组、二维数组
    *数组元素的默认初始化值
        *数组元素是整形:0
        *数组元素是浮点型:0.0
        *数组元素是char型:"\u0000",而不是'0'
        *数组元素是boolean型:false
        *数组元素是引用数据类型:null    
    *二维数组的使用
        *理解:对二维数组的理解,我们可以看成是一维数组arr1又作为另一个一维数组arr2的元素而存在。
    *数组元素的默认初始化值
        *针对初始化方式一如: int[][] arr = new int[4][3];
            外层元素的初始化值为:地址值
            内层元素的初始化值为:与一维数组初始化情况相同
        *针对初始化方式二如:int[][] arr = new int[3][]
            外层元素的初始化值为:null 
            内层元素的初始化值为:不能调用,否则会报空指针异常    
 */

问题总结

Arrays.copyOf() 和 System.arraycopy的区别 

image-20200923231332085

共同点:都是对数组的复制
不同点:Arrays.copyOf() 的 底层也是调用了 System.arraycopy()方法,但是 Arrays.copyOf()方法一进去就创建了一个 指定长度的 新数组 ,而复制的时候 是按照原有数组长度复制的,超出原有数组长度的部分会显示默认的初始化值。

心得

感觉每天的时间不够用,晚上把白天的知识点复习一遍,再把作业做完已经没有什么时间做自己的事了。

评论