数组
1.形式
-
数组类型:
类型 int[]
-
声明:类型+变量名,
int[] nums
-
创建:分配数组长度,
nums = int[10]
,数组对象是在堆中的。 -
总结:
int[] nums = new int[10];
或int nums[] = new int[10];
,多用前者。
2.操作
- 获取数组长度:
nums.length
,多用与循环判断条件。 - 通过索引赋值,多用for循环。下标的合法区间是(0,length-1),否则会有数组下标越界异常,提示
ArrayIndexOutOfBoundsException
。 - 遍历输出所有元素时使用For-Each循环,快捷键
nums.for
。 - 数组可作方法入参,亦可作返回值。
二维数组
- 数组类型:
类型 int[][]
,int array = {{1,2}{2,3}{3,4}};
array[i][j]
表示某一元素,array[i]
表示第i行,array[i].length
为此行长度。
Arrays工具类
- 赋值:
fill
- 排序:
sort
,升序 - 比较:
equals
- 查找:
binarySearch
冒泡排序
- 比较数组中每两个相邻元素,前者大于后者则交换位置。
- 每次比较产生一个最大数,下一轮便可减少一次排序。
- 遍历循环,内层为
length-1-i
次,外层为length-1
次。
稀疏数组
- 作用:当一个数组中大部分元素为无效值0,可以用每个有效值表示为横纵坐标和其值,以此来压缩数据。这是一种数据结构。
- 结构:若有n个有效值则为n+1行3列,第一行表示原二维数组行数、列数以及有效值个数。下面每行表示一个有效值的坐标及其大小。