Java 数组教程:声明、创建、初始化 [示例]
什么是 Java 数组?
Java 数组 是一种非常常见的数据结构类型,它包含相同数据类型的所有数据值。放入数组中的数据项称为元素,数组中的第一个元素从索引零开始。数组继承对象类并实现可序列化和可克隆的接口。我们可以将原始值或对象存储在数组中。
简而言之,它是一种编程构造,可以帮助替换它
x0=0; x1=1; x2=2; x3=3; x4=4; x5=5;
有了这个……
x[0]=0; x[1]=1; x[2]=2; x[3]=3; x[4]=4; x[5]=5;
在本教程中,您将学习-
- 什么是数组?
- 数组变量
- 第一个数组程序
- Java 数组:通过引用传递
- 多维数组
这有什么帮助是变量可以引用索引(括号[]中的数字)以便于循环。
for(count=0; count<5; count++) { System.out.println(x[count]); }
数组变量
在程序中使用数组是 3 步过程 ——
1) 声明你的数组
2) 构建你的数组
3) 初始化你的数组
1) 声明你的数组
语法
<elementType>[] <arrayName>;
或
<elementType> <arrayName>[];
示例:
int intArray[]; // Defines that intArray is an ARRAY variable which will store integer values int []intArray;
2) 构造数组
arrayname = new dataType[]
示例:
intArray = new int[10]; // Defines that intArray will store 10 integer values
声明和构造相结合
int intArray[] = new int[10];
3) 初始化一个数组
intArray[0]=1; // Assigns an integer value 1 to the first element 0 of the array intArray[1]=2; // Assigns an integer value 2 to the second element 1 of the array
声明和初始化一个数组
[] = {};
示例:
int intArray[] = {1, 2, 3, 4}; // Initilializes an integer array of length 4 where the first element is 1 , second element is 2 and so on.
第一个数组程序
步骤 1) 将以下代码复制到编辑器中。
class ArrayDemo{ public static void main(String args[]){ int array[] = new int[7]; for (int count=0;count<7;count++){ array[count]=count+1; } for (int count=0;count<7;count++){ System.out.println("array["+count+"] = "+array[count]); } //System.out.println("Length of Array = "+array.length); // array[8] =10; } }
步骤 2) 保存,编译并运行代码。观察输出
输出:
array[0] = 1 array[1] = 2 array[2] = 3 array[3] = 4 array[4] = 5 array[5] = 6 array[6] = 7
步骤 3) 如果 x 是对数组的引用,x.length 会给你数组的长度。
取消注释第 10 行。保存、编译并运行代码。观察输出
Length of Array = 7
第 4 步) 与 C 不同,Java 在访问数组中的元素时会检查数组的边界。 Java不会让程序员越界。
取消注释第 11 行。保存、编译并运行代码。观察输出
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8 at ArrayDemo.main(ArrayDemo.java:11) Command exited with non-zero status 1
第 5 步) 抛出 ArrayIndexOutOfBoundsException。在 C 的情况下,相同的代码会显示一些垃圾值。
Java 数组:通过引用传递
数组通过引用传递给函数,或者作为指向
原始的指针。这意味着你对
函数内的数组所做的任何事情都会影响到原来的。
示例:了解数组是通过引用传递的
步骤 1) 将以下代码复制到编辑器中
class ArrayDemo { public static void passByReference(String a[]){ a[0] = "Changed"; } public static void main(String args[]){ String []b={"Apple","Mango","Orange"}; System.out.println("Before Function Call "+b[0]); ArrayDemo.passByReference(b); System.out.println("After Function Call "+b[0]); } }
步骤 2) 保存、编译和运行代码。观察输出
输出:
Before Function Call Apple After Function Call Changed
多维数组
多维数组其实就是数组的数组。
要声明多维数组变量,请使用另一组方括号指定每个附加索引。
Ex: int twoD[ ][ ] = new int[4][5] ;
为多维数组分配内存时,只需指定第一个(最左边)维度的内存即可。
您可以单独分配剩余的维度。
在Java中,多维数组中每个数组的数组长度由你控制。
示例
public class Guru99 { public static void main(String[] args) { // Create 2-dimensional array. int[][] twoD = new int[4][4]; // Assign three elements in it. twoD[0][0] = 1; twoD[1][1] = 2; twoD[3][2] = 3; System.out.print(twoD[0][0] + " "); } }
输出:
1
java