获取数组索引_对Java数组的总结
数组(Array)是有序数据的集合,数组中的每个元素具有相同的数据类型,可以⽤⼀个统⼀的数组名和不同的下标来唯⼀确定数组中的元
素。根据数组的维度,可以将其分为⼀维数组、⼆维数组和多维数组等。
⼀维数组
数组中每个元素都只带有⼀个下标,是数组中最简单的⼀种数组。
1. 声明
声明⼀维数组语法有两种格式(推荐使⽤第⼀种)。
type[] arrayName; // 数据类型[] 数组名;
或者
type arrayName[]; // 数据类型 数组名[];
2. 分配空间
分配空间语法格式如下。
arrayName = new type[size]; // 数组名 = new 数据类型[数组长度];
3. 初始化
Java 中初始化数组有以下 3 种⽅式。
使⽤ new 指定数组⼤⼩后进⾏初始化
使⽤ new 指定数组元素的值
直接指定数组元素的值4. 使⽤
// 使⽤ new 指定数组⼤⼩后进⾏初始化int[] number = new int[5];number[0] = 1;number[1] = 2;number[2] = 3;number[3] = 5;number[4] = 8;// 使⽤ new 指定数组
获取单个元素
获取全部元素⼆维数组
/
/ 获取单个元素int[] number = { 1, 2, 3, 5, 8 };System.out.println("获取第⼀个元素:" + number[0]);// 使⽤for语句获取全部元素int[] number = { 1, 2, 3, 5, 8 };for
⼆维数组被看作数组的数组。
1. 声明
声明⼆维数组语法有两种格式(推荐使⽤第⼀种)。
type[][] arrayName; // 数据类型[][] 数组名;
或者
type arrayName[][]; // 数据类型 数组名[][];
第⼀个中括号表⽰⾏,第⼆个中括号表⽰列。
2. 初始化
⼆维数组可以通过以下 3 种⽅式来指定元素的初始值。
type[][] arrayName = new type[][]{值 1,值 2,值 3,…,值 n}; // 在定义时初始化
type[][] arrayName = new type[size1][size2]; // 给定空间,在赋值
type[][] arrayName = new type[size][]; // 数组第⼆维长度为空,可变化
// 定义时初始化
int[][] temp = new int[][]{{1,2},{3,4}};
// 给定空间在赋值
int[][] temp = new int[2][2];
// 数组第⼆维长度为空,可变化
int[][] temp = new int[2][];
3. 使⽤
获取单个元素:arrayName[i-1][j-1];arrayName 表⽰数组名称,i 表⽰数组的⾏数,j 表⽰数组的列数。
获取全部元素:使⽤嵌套 for 循环或 for each 循环语句。
获取整⾏元素:需要将⾏数固定,然后只遍历该⾏中的全部列即可。
获取整列元素:获取指定列的元素与获取指定⾏的元素相似,保持列不变,遍历每⼀⾏的该列即可。
数组操作
1. ⽐较数组
⽐较数组元素的个数和对应位置的元素是否相等。
Arrays.equals(arrayA, arrayB);
arrayA 是⽤于⽐较的第⼀个数组,arrayB 是⽤于⽐较的第⼆个数组。
2. 填充数组
在指定位置进⾏数值填充。
Arrays.fill(array,value);
array 表⽰数组,value 表⽰填充的值。只能使⽤同⼀个数值进⾏填充。
3. 数组查
从数组中查询指定位置的元素,或者查询某元素在指定数组中的位置,语法格式如下。
binarySearch(Object[] a,Object key);
a 表⽰要搜索的数组,key 表⽰要搜索的值。在数组中指定范围内查,语法格式如下。
binarySearch(Object[] a,int fromIndex,int toIndex,Object key);
a 表⽰要进⾏查的数组,fromIndex 指定范围的开始处索引(包含开始处),toIndex 指定范围的结束处索引(不包含结束处),key 表⽰要搜索的元素。
4. 复制数组
1) copyOf()
srcArray 表⽰要进⾏复制的数组,length 表⽰复制后的新数组的长度
2) CopyOfRange()
srcArray 表⽰原数组,startIndex 表⽰开始复制的起始索引,endIndex 表⽰终⽌索引。
3) arraycopy()
System.arraycopy(dataType[] srcArray,int srcIndex,int destArray,int destIndex,int length)
srcArray 表⽰原数组,srcIndex 表⽰源数组中的起始索引,destArray 表⽰⽬标数组,destIndex 表⽰⽬标数组中的起始索引,length 表⽰要复制的数组长度。
4) clone()
array_name.clone()
数组排序
Java 数组中有 5 种常见排序⽅法,分别是:
1. Arrays.sort()
2. 冒泡排序
3. 快速排序
4. 选择排序
5. 直接插⼊
常见问题解答
1. 声明数组需要注意什么?
声明数组时,⼀定要考虑数组的最⼤容量,防⽌容量不够的现象。数组⼀旦被声明,它的容量就固定了,不容改变。如果想在运⾏程序时改变容量,就需要⽤到集合。关于集合我们会在教程后⾯讲解。
2. 数组在平时的程序代码中使⽤是否频繁?
数组有⼀个缺点,就是⼀旦声明,就不能改变容量,这个也是其使⽤频率不⾼的原因。⼀般存储数据会使⽤集合或 Vector 来存储数据,后⾯我们会讲到。
应⽤实例
本章还有多种数组的⽰例程序,⼤家可以直接点击下⾯链接进⾏阅读练习(前 3 个为⼀维数组应⽤,后 java定义一维数组并赋值
3 个为⼀维数组和⼆维数组结合应⽤):
Java求最⼤和最⼩值
Java统计商品信息
Java数字转⼈民币读法
Java商品信息查询
Java五⼦棋游戏
Java输出杨辉三⾓形
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论