1.定义和初始化数组
2.for循环和for each循环
3.匿名数组和数组拷贝
4.二维数组
1.定义和初始化数组
定义:
int[] a ;或者 int a[];都是声明了一个数组变量 a,但第一种声明方法会比较常用,因为他能直观地表示 a 是一个int型数组
接下来是初始化数组:
int[] a = new int[5]; 表示int型数组变量a是一个拥有5个 int 成员的数组。
初始化:
int[] a = {0,1,2,3}; 表示把数组a初始化为4个成员,分别为0,1,2,3
2.for循环和for each循环
这两个循环可以用来给数组赋值或者遍历数组
for 循环:
int[] a = new int[5];
for(int i = 0;i<a.length;i++)
{
a[i] = i;
}
上述的语句表示给数组a赋值,a[i] = i,i=0,1,2,3,4. 其中a.length表示数组a的长度。
for each循环:
int []a;
a = new int[5];
for(int i=0;i<a.length;i++)
{
a[i]=i;
}
for(int i:a)
{
System.out.println(i);
}
for each循环中,用一个临时变量 i,来存储数组a[x]中的值,从a[0]开始,循环一次,数组a的下标自动加一。
3.数组拷贝和匿名数组
数组拷贝:
Java中数组可以直接用“ = ”来拷贝
int[] a = {0,1,2,3};
int[] b = {4,5,6,7,8,9};
b = a;
for(int i:b)
{
System.out.println(i);
}
上述代码中:定义了数组a和数组b。而b = a时,表示b 已经完全等于a了,和b原来初始化的值无关。所以b=a后,数组b的元素是 0,1,2,3
匿名数组:
new int[] {0,1,2,3};表示初始化一个匿名数组。匿名数组用于重新初始化一个数组,例如:
int[] a = {0,1,2,3};
a = new int[] {0,1,1};
一开始初始化了a,但又想重新初始化a,就可以利用匿名数组。
注意:下面这种写法是错误的:
int[] a = {0,1,2,3};//初始化数组
a ={0,0,0,0};//错误。重新初始化数组不能这样写
二维数组又称 矩阵 。
二维素组定义和初始化:
int[][] arr = new int[3][3];//第一种初始化方法:定义一个3行3列的二维数组,并初始化为0;
int [][] arr = //第二种初始化方法:直接给二维数组赋值
{
{1,2,3},
{4,5,6},
{7,8,9},
};
int [][] arr =
{
{1,2,3},
{4,5,6},
{7,8,9},
};
/*用for each打印二维数组*/
for(int[] b:arr)
{
for(int i:b)
System.out.print(i);
System.out.println();
}
快速打印二维数组:
通过导入包: import java.util.*; 然后使用Arrays类的deepToString()方法:
import java.util.*;
public class Main
{
public static void main(String[] args)
{
int [][] arr =
{
{1,2,3},
{4,5,6},
{7,8,9},
};
System.out.println(Arrays.deepToString(arr));
}
}
打印结果:[[1, 2, 3], [4, 5, 6], [7, 8, 9]]