- Java数据类型简介
- 原始数据类型
- 包装
- 使用
- 字符串
- 数组
Java多维数组
可以在二维数组中存储表格数据。在数组声明的每个维度的一对括号[]
来声明多维数组。
例如,如下所示定义int
类型的二维数组:
int[][] table;
这里,table
是一个引用变量,可以保存对int
类型的二维数组的引用。下面创建具有三行和两列的int
类型二维数组,如下所示:
table = new int[3][2];
多维数组中每个维度的索引都是从零开始的。可使用table[rownumber] [columnNumber]
访问table
数组的每个元素。行号(rownumber
)和列号(columnNumber
)始终从0
开始。
例如,以下代码将一个值 32
分配给表数组中的第一行和第二列,如图所示:
table[0][1] = 32;
可以将值1
分配给第三行和第一列,如下所示:
table[2][0] = 1;
必须在创建多维数组时指定至少第一级数组的维度。例如,
table = new int[3][];
此语句仅创建第一级数组。此时仅存在table[0]
,table[1]
和table[2]
,它们都是引用 null
值。 table.length
的值为3
。table[0]
,table[1]
和table[2]
是int
类型的数组,也可以将它们赋值为 -
table[0] = new int[2]; // Create two columns for row 1 table[1] = new int[2]; // Create two columns for row 2 table[2] = new int[2]; // Create two columns for row 3
Java可以为每行创建一个具有不同列数的二维数组。这样的数组称为粗糙数组。
public class Main { public static void main(String[] args) { // Create a two-dimensional array of 3 rows int[][] raggedArray = new int[3][]; // Add 2 columns to the first row raggedArray[0] = new int[2]; // Add 1 column to the second row raggedArray[1] = new int[1]; // Add 3 columns to the third row raggedArray[2] = new int[3]; // Assign values to all elements of raggedArr raggedArray[0][0] = 1; raggedArray[0][1] = 2; raggedArray[1][0] = 3; raggedArray[2][0] = 4; raggedArray[2][1] = 5; raggedArray[2][2] = 6; // Print all elements. One row at one line System.out.println(raggedArray[0][0] + "\t" + raggedArray[0][1]); System.out.println(raggedArray[1][0]); System.out.println(raggedArray[2][0] + "\t" + raggedArray[2][1] + "\t" + raggedArray[2][2]); } }
上面的代码生成以下结果。
1 2 5 6
访问多维数组的元素
通常,使用嵌套for
循环来填充多维数组。用于处理多维数组的for
循环次数等于数组中的维数。
以下代码显示了如何访问多维数组的元素
public class Main { public static void main(String[] args) { int[][] myArray = new int[3][]; myArray[0] = new int[2]; myArray[1] = new int[1]; myArray[2] = new int[3]; // Populate the ragged array using for loops for (int i = 0; i < myArray.length; i++) { for (int j = 0; j < myArray[i].length; j++) { myArray[i][j] = i + j; } } // Print the array using for loops for (int i = 0; i < myArray.length; i++) { for (int j = 0; j < myArray[i].length; j++) { System.out.print(myArray[i][j] + "\t"); } // Add a new line after each row is printed System.out.println(); } } }
上面的代码生成以下结果。
0 1 4
初始化多维数组
可以在声明时或在创建时提供值列表来初始化多维数组中的每个元素。
每个维度的初始值数量将决定数组中每个维度的长度。级别的值列表用大括号括起来。对于二维数组,每行的值列表都包含在一对大括号中,如下所示:
int[][] arr = {{10, 20, 30}, {1, 2}, {2, 3, 4, 5}};
在上面的语句中创建一个具有三行的二维数组。以下代码显示如何初始化一个二维String
类型的数组:
String[][] acronymlist = {{"A", "a"}, {"B", "b"}, {"C", "c"}};
可以在创建多维数组时初始化多维数组的元素。如下代码所示 -
int[][] arr = new int[][]{{1, 2}, {3,4,5}};
上一篇:Java数组参数
下一篇:没有了
- Java教程
- Vim教程
- Swing教程
- Spring教程
- Spring Web Services教程
- Spring MVC教程
- Spring JDBC教程
- Spring Cloud教程
- Spring Boot教程
- Spring Boot CLI教程
- Spring Batch教程
- Spring AOP教程
- PDFBox教程
- JSP教程
- JSF教程
- JPA教程
- Java面向对象设计
- Java设计模式
- Java虚拟机教程
- Java泛型教程
- Java正则表达式教程
- Java数据类型教程
- Java并发编程教程
- Java密码学教程
- Java多线程教程
- Java国际化(i18n)教程
- JavaFX教程
- Java9教程
扫描二维码
程序员编程王