数组
1.用来存储相同类型的元素
2.定义数组长度后无法更改
3.数组长度必须是整数,可以是变量
4.用数组下标来区分存储的元素
5.下标从0开始到数组长度-1
6.编译时不会检查下标,但运行时下标不正确会出错
定义方式
1.定义数组变量
int[] numbers = new int[100]; /*整数数组*/
double[] num = new double[100]; /*浮点数数组*/
String[] str = new String[100]; /*字符串数组*/
2.直接初始化数组
int[] numbers = {1,2,3,4,5}; /*整数数组*/
double[] num = {1.0,2.0,3.0,4.0,5.0}; /*浮点数数组*/
String[] str = {a,b,c,d,e}; /*字符串数组*/
数组变量
1.数组变量是数组的管理者而非数组
2.数组创建后交予数组变量管理
3.数组变量之间的赋值是管理权限的赋予
4.数组间的比较是判断管理数组是否为同一个
int[] a = {1,2,3};
int[] b = a;
for(int i=1;i<3;i++)
{
b[i]++;
}
for(int i=1;i<3;i++)
{
System.out.println(a[i]);
}
2
3
4
将数组a赋值给b实际上是给予了b管理a所管理的数组的权限,赋值后a与b实际上管理的是同一个数组,如图
![](https://img.haomeiwen.com/i14821900/8c1c910b024041ba.png)
数组遍历
1.如果需要对数组内每一元素进行操作,需要遍历每一元素
2.如创造全0数组,复制数组,查找某一元素
3.一般使用for循环进行遍历
4.如for(i=0,i<numbers.length();i++){}
5.numbers.length()返回数组的长度
6.for-each可用于循环数组
使用方式:for(数据类型 元素:数组){}
int[] a = {1,2,3};
for(int i:a)
{
System.out.println(i);
}
1
2
3
二维数组
![](https://img.haomeiwen.com/i14821900/efe7131b40d22f21.png)
1.二维数组类似于矩阵形式
2.定义方式:int[][] numbers = new int[3][5];
或 int[][] numbers = {{1,2,3,4,5},{1,2,3,4,5},{1,2,3,4,5},}
3.最后的逗号是存在的
4.元素引用为numbers[3][5]而非numbers[3,5]
5.在初始化时省略则补0
6.对二维数组进行操作时,要使用两层循环
int[][] A = new int[3][3];
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
A[i][j] = 0;
}
}
//生成3x3的零矩阵
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
System.out.print(A[i][j]);;
}
}
000000000
7.有时要对二维数组的某一行某一列或是对角线进行操作,要注意此时下标的变化
网友评论