在Java编程语言中,数组是一种特殊的数据结构,用于存储同类型的数据集合。在这个"java学习笔记JDK6课件之五"中,我们主要探讨了一维数组和二维数组的概念、声明、初始化以及基本操作。
一维数组是Java中最基础的数组形式,可以看作是一条线性序列。在Java中,声明一维数组通常包含两步:声明数组变量类型和创建数组实例。例如:
```java
int[] score = new int[5];
```
这段代码声明了一个名为`score`的一维整数数组,长度为5。`score.length`属性返回数组的长度,即5。数组索引从0开始,因此有效的索引范围是0到4。如果尝试访问超出此范围的索引,将会抛出`ArrayIndexOutOfBoundsException`异常。
例如:
```java
score[0] = 90;
score[1] = 85;
// ...
```
初始化一维数组可以有两种方式。一种是在声明时直接提供初始值:
```java
int[] score = {90, 85, 55, 94, 77};
```
另一种是在声明后使用循环逐个赋值。在示例中,还展示了如何通过for循环遍历数组并打印所有元素:
```java
for (int i = 0; i < score.length; i++) {
System.out.println("score[" + i + "] = " + score[i]);
}
```
数组中的元素也可以通过索引进行修改,例如:
```java
score[0] = 100;
```
在“谜题4”中,演示了如何动态地给数组赋值,先将数组元素初始化为0,然后重新赋值:
```java
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
arr[i] = i;
}
```
此外,数组长度也可以在运行时动态确定。例如,通过用户输入来设置数组长度:
```java
int length = scanner.nextInt();
float[] score = new float[length];
```
接下来,我们讨论二维数组,它实际上是一组一维数组的集合,可以看作是一个矩阵。二维数组声明和初始化如下:
```java
int[][] arr = {{1, 2, 3}, {4, 5, 6}};
```
或者,可以先声明数组,再逐一填充元素:
```java
int[][] arr = new int[2][3];
arr[0] = {1, 2, 3};
arr[1] = {4, 5, 6};
```
访问二维数组的元素需要两个索引,如`arr[i][j]`。在遍历二维数组时,需要两个嵌套的for循环:
```java
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr[0].length; j++) {
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
```
另外,可以将二维数组的一个子数组(如`arr[0]`)赋值给一个一维数组引用,这样就可以对子数组进行操作:
```java
int[] foo = arr[0];
```
这使得我们可以单独处理二维数组的行或列。
总结来说,这个Java学习笔记主要涵盖了JDK6中一维数组和二维数组的基础知识,包括声明、初始化、遍历、元素访问以及动态配置数组长度等核心概念,对于初学者而言是非常宝贵的入门资料。通过深入理解这些基础知识,开发者能够有效地利用数组这一强大的数据结构来解决实际问题。