Java语言程序设计(基础篇) 第八章 多维数组

时间:2023-01-01 11:45:22

第八章 多维数组

  8.2 二维数组的基础知识

  二维数组中的元素通过行和列的下标来访问。

  8.2.1 声明二维数组变量并创建二维数组

   下面是二维数组的语法:

    数据类型[][] 数组名;

    int[][] matrix;

  8.2.2 获取二维数组的长度

  二维数组实际上是一个数组,它的每个元素都是一个一维数组。数组x的长度是数组中元素的个数,可以用x.length获取该值。元素x[0],x[1],x[2],x[3],...,,x[x.length-1]也是数组。可以使用x[0].length,x[1].length,...,x[x.length-1].length获取它们的长度。

  8.2.3 锯齿数组

  1.二维数组中的每一行本身就是一个数组,因此,各行的长度就可以不同。这样的数组称为锯齿数组(ragged array)。

  2.使用语法new int[5][]创建数组时,必须指定第一个下标。语法new int[][]是错误的。

    int[][] triangleArray=new int[5][];

  8.3 处理二维数组

  嵌套的for循环常用语处理二维数组。

  8.4 将二维数组传递给方法

  将一个二维数组传递给方法的时候,数组的引用传递给了方法。

  

 1 package com.chapter8;
2
3 import java.util.Scanner;
4
5 public class PassTwoDimensionalArray {
6
7 public static void main(String[] args) {
8 int[][] m=getArray();
9 System.out.println(sum(m));
10 }
11
12 public static int[][] getArray(){
13 Scanner input=new Scanner(System.in);
14 int[][] m=new int[3][4];
15 System.out.println("Enter "+m.length+" rows and"+m[0].length+" column");
16 for(int i=0;i<m.length;i++){
17 for(int j=0;j<m[i].length;j++){
18 m[i][j]=input.nextInt();
19 }
20 }
21 return m;
22 }
23
24 public static int sum(int[][] m){
25 int total=0;
26 for(int row=0;row<m.length;row++){
27 for(int column=0;column<m[row].length;column++){
28 total+=m[row][column];
29 }
30 }
31 return total;
32 }
33
34 }