一维数组
数组的属性与创建方法
数组可以被看作为多个数据的集合,创建格式如下:
数据类型[] 数组名 = {元素1,元素2,……};
数据类型[] 数组名 = new 数据类型[数组长度];
数据类型[] 数组名 = new int[]{元素1,元素2……}
数组的长度可以通过:
数组名.length读取。
数组的长度为final值,无法被修改。
数组可以被看作为一种引用类型,引用类型包括三大种:
(1)类
(2)接口
(3)数组
可以通过数组名.[数据所在位置]来访问数组当中的每一个元素,检索范围不能超过数组的最大长度,且访问时第一个位置从0开始。
当访问数组超过最大长度时会出现ArrayIndexOutOfBoundsException,告知你数组索引越界。
二维数组
二维数组可以看作为每个元素都是一个数组的一维数组。
二维数组的创建如下:
数组类型[][] 数组名 = new 数组类型[长度1][长度2];//定义数组长度
数组名[元素]=new int[]{元素中的数组,…};//给数组中的元素赋值
数组类型[][] 数组名 = { {元素1,元素2……},new 类型[10] };
遍历数组
数组可以通过for循环或for each循环来遍历输出数组中的每个值,具体方法如下:
如图所示,通过for each循环,我正在运行的代码为遍历一维数组的方法,注释掉的代码为遍历二维数组的方法。
数组的排序
将一个数组按从小到大的方式排序有多种排序算法,最常见的为冒泡排序和选择排序。
冒泡排序
冒泡排序的思路为一个数组的元素当中如果当前索引的值中的元素大于下一个索引的值中的元素,则将两者替换位置,并多次进行比较。具体可以通过for循环的嵌套实现,具体代码如下:
选择排序
选择排序的思路为通过在一个数组中找到最大的元素,并将这个元素的索引与该数组中的最后一个索引掉换位置,其它数组当中的位置不变,之后从该索引的倒数第二个位置开始重复进行这种筛选,具体操作代码如下:
如图我先设置了一个max值储存最大的数组位置,之后通过for循环嵌套不断重复了筛选的过程,最后也得到了从小到大排序的结果。
Array.sort方法
java API中还提供了一个简单的引用方法来给数组排序,具体格式为Array.sort(数组名).这样可以直接给括号当中的数组进行排序。
如何找到一个二维数组当中的最大值并明确它的索引位置
可以借鉴选择排序当中找到一个一维数组的最大值的方法,进行for循环嵌套将二维数组中的每一个元素都进行筛选,找到最大值之后直接在循环中输出它的索引位置。具体代码如下:
首先先定义两个int值d,f用于储存最大元素所在索引的位置,之后直接输出d,f值即可。
总结
数组的几个重要知识点
(1)掌握数组的属性和赋值方式。
(2)掌握数组的遍历方法。
(3)掌握数组的排序方法,并简单了解排序算法。
(4)在第3点基础之上学习做一些简单的筛选。