【Java】 目前主要更新Java,一起学习一起进步。
本期主要介绍数组的常见操作以及数组作为方法参数和返回值
观察一下代码,运行后会出现什么结果。
创建数组,赋值 3 个元素,数组的索引就是 0 , 1 , 2 ,没有 3 索引,因此我们不能访问数组中不存在
的索引,程序运行后,将会抛出 ArrayIndexOutOfBoundsException 数组越界异常。在开发中,数
组的越界异常是 不能出现 的,一旦出现了,就必须要修改我们编写的代码。
观察一下代码,运行后会出现什么结果。
arr = null 这行代码,意味着变量 arr 将不会在保存数组的内存地址,也就不允许再操作数组了,因
此运行的时候
会抛出 NullPointerException 空指针异常。在开发中,数组的越界异常是 不能出现 的,一旦出现
了,就必须要修
改我们编写的代码。
空指针异常在内存图中的表现
数组遍历: 就是将数组中的每个元素分别获取出来,就是遍历。遍历也是数组操作中的基石。
以上代码是可以将数组中每个元素全部遍历出来,但是如果数组元素非常多,这种写法肯定不行,
因此我们需要改
造成循环的写法。数组的索引是 0 到 lenght - 1 ,可以作为循环的条件出现。
最大值获取: 从数组的所有元素中找出最大值。
实现思路:
定义变量,保存数组 0 索引上的元素
遍历数组,获取出数组中的每个元素
将遍历到的元素和保存数组 0 索引上值的变量进行比较
如果数组元素的值大于了变量的值,变量记录住新的值
数组循环遍历结束,变量保存的就是数组中的最大值
数组的反转: 数组中的元素颠倒顺序,例如原始数组为 1,2,3,4,5 ,反转后的数组为 5,4,3,2,1
实现思想: 数组最远端的元素互换位置。
实现反转,就需要将数组最远端元素位置交换
定义两个变量,保存数组的最小索引和最大索引
两个索引上的元素交换位置
最小索引 ++ ,最大索引 -- ,再次交换位置
最小索引超过了最大索引,数组反转操作结束
以前的方法中我们学习了方法的参数和返回值,但是使用的都是基本数据类型。那么作为引用类型
的数组能否作为
方法的参数进行传递呢,当然是可以的。
数组作为方法参数传递,传递的参数是数组内存的地址。
数组作为方法的返回值,返回的是数组的内存地址
1. 分析下列程序代码,计算输出结果。
2. 分析下列程序代码,计算输出结果。
总结 :
方法的参数为基本类型时 , 传递的是数据值 . 方法的参数为引用类型时 , 传递的是地址值 .