牛骨文教育服务平台(让学习变的简单)
博文笔记

Java中二维数组的用法(不定长二维数组)

创建时间:2015-05-06 投稿人: 浏览次数:150

Java中二维数组的用法(不定长二维数组),即每个第二维的数组长度不一样。

1》代码如下:

package com.demo.test;

public class Test {

	public Test() {
		// TODO Auto-generated constructor stub
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int [][] arrays;//声明一个二维数组
		//初始化该二维数组的第一维
		arrays =new int [3][];
		//初始化该二维数组的第二维(不等长)
		for(int i=0;i<arrays.length;i++){
			arrays[i]=new int [i+1];
		}
		//初始化该二维数组
		for(int i=0;i<arrays.length;i++){
			for(int j=0;j<arrays[i].length;j++){
				arrays[i][j]=i+j;
			}
		}
		
		//输出显示该二维数组
		/*for(int i=0;i<arrays.length;i++){
			for(int j=0;j<arrays[i].length;j++){
				System.out.print("["+i+"]["+j+"]:"+arrays[i][j]+"   ");
			}
			System.out.println();
		}*/
		for (int[] demen1 : arrays) {
			for (int demen2 : demen1) {
				//*********对迭代变量赋值,并不会真正改变数组元素的值*******
				//foreach 中的循环变量相当于一个临时变量,系统会把数组或集合中的元素依次赋给这个临时变量
				//而这个临时变量并不是数组或集合中的元素,它只是保存了数组元素的值而已。
				//所以,通过对循环变量进行赋值,不能真正改变数组元素的值。
				//如果希望改变数组元素的值,则不能使用foreach循环。
				demen2=-1;//
				System.out.print(demen2);
				System.out.print("   ");
			}
			System.out.println();
		}

		System.out.println("--------------------------");
		for (int[] demen1 : arrays) {
			for (int demen2 : demen1) {
				System.out.print(demen2);
				System.out.print("   ");
			}
			System.out.println();
		}

	}

}



2》运行结果如下:


Ps:通过以上,可以发现二维数组就是每个数组元素又是一个一维数组的一维数组。

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。