20200923_陈宇_

日志

学习总结:

数组:

一维数组:

​ 数组:数组是具有相同数据类型且按一定次序排列的一组变量的集合体;Java为数组在内存中分配一段连续的空间

​ 数组元素:构成一个数组的每一个数据称为数组元素

​ 数组下标:在数组中,数组下标是用整数表示的,从0开始,依次+1

​ 数组大小:数组中元素的个数叫做数组的大小,也叫数组的长度

使用数组:

​ 定义数组:

​ 数据类型[ ] 数组名;(推荐使用这种)

​ 数据类型 数组名[ ];

​ 数组是引用类型,引用类型变量的默认值都是null;

​ 为数组分配内存:

​ 通过new运算符为数组元素分配空间内存

​ 分配内存语法:数组名 = new int[5];

​ 数组长度是在为数组元素分配内存是确定的,数组长度一旦确定,长度不可更改

​ int类型的数组是引用类型,int数组的元素是基本类型

​ 数组元素初始化

​ 数组声明并为数组元素分配空间完成后,必须为数组元素初始化(初始化就是第一次赋值),初始化之后才能使用数组

​ 初始化:如:int[ ] score = new int[ ]{1,2,3} 或 int[ ] score = {1,2,3}(这个只能写在同一排)

​ 通常都使用for循环为数组初始化值,将for循环的循环变量作为数组的下标使用

​ 遍历数组

​ 通常使用for循环遍历数组,还可以使用for-each循环遍历数组:

​ for-each:

​ for(变量:被循环的变量){ (可以理解为为for循环中加入int num = nums[i])

​ 代码块

​ }

​ 每次循环都会将被循环的变量的对应值赋值给变量

二维数组:

​ 二维数组就是数组里面的数组元素又是一个数组,二维数组的操作和语法与一维数组类似

​ 定义二维数组:

​ 数据类型【】【】 数组名; 或 数据类型 数组名【】【】

Arrays类:

​ static()方法可以直接使用类名.方法名()调用

​ binarySearch(array,val) 返回值:int 作用:查询元素值val在数组array中的下标

​ binarySearch(array a,int fromIndex,int toIndex,val) 返回值:int 作用:使用二分搜索算法搜索指定值在目标数组指定范围中的下标,使用前需先将数组排序

​ copyOf(array,length) 返回值:与array数据类型一致 作用:把数组array复制成一个长度为length的新数组(复制数组的长度大于原数组的长度的话,大于原数组组长度部分用数组数据类型的默认值填充)

​ fill(array,val) 返回值:void 作用:把数组array的所有元素都赋值成val

​ toString(array) 返回值:String 作用:将一个数组array转换成一个字符串

​ sort(array) 返回值:void 作用:对数组array的元素进行排序

​ equals(array1,array2) 返回值:Boolean 作用:比较两个数组是否相等

System类:

​ System 类包含几个有用的类字段和方法。它不能被实例化。

​ System类是final类,不可能存在子类

​ System字段:

​ err:类型:PrintStream 作用:"标准"错误输出流

​ arraycopy(Object src, int srcPos, Object dest, int destPos, int length):

​ src – 源数组;

​ srcPos – 源数组中的起始位置;

​ dest – 目标数组;

​ destPos – 目的地数据中的起始位置;

​ length – 要复制的数组元素的数量

学习心得:

​ 今天学习了数组,感觉单单数组这一块理解起来还是不是特别难,但是一旦和循环结合起来就变难了,而且下午快结束的时候完全不知道在听什么了,今天的第二题不会做,浩哥明天来讲一下嘛。

标签

评论

this is is footer