zoukankan      html  css  js  c++  java
  • 两张内存变化图揭秘二维数组的初始化

    一 代码示例

    public class TwoDimensionTest
    {
    	public static void main(String[] args)
    	{
    		// 定义一个二维数组
    		int[][] a;
    		// 把a当成一维数组进行初始化,初始化a是一个长度为4的数组
    		// a数组的数组元素又是引用类型
    		a = new int[4][];  //a
    		// 把a数组当成一维数组,遍历a数组的每个数组元素
    		for (int i = 0 , len = a.length; i < len ; i++ )
    		{
    			System.out.println(a[i]);
    		}
    		// 初始化a数组的第一个元素
    		a[0] = new int[2];
    		// 访问a数组的第一个元素所指数组的第二个元素
    		a[0][1] = 6;            //b
    		// a数组的第一个元素是一个一维数组,遍历这个一维数组
    		for (int i = 0 , len = a[0].length ; i < len ; i ++ )
    		{
    			System.out.println(a[0][i]);
    		}
    	}
    }

    二 运行结果

    null
    null
    null
    null
    0
    6
    三 结果分析



     

     
    图一是a段代码执行完后的内存情况。
    图二是b段代码执行完后的内存情况。
    另外从图一和图二,我们可以得出这样一个结论:二维数组是一维数组,其数组元素是一维数组。三维数组也是一维数组,其数组元素是二维数组,从这个角度来看,Java语言没多维数组。

  • 相关阅读:
    初学mysql数据库
    类与对象课堂总结
    CNN网络的基本介绍(三)
    CNN网络的基本介绍(二)
    CNN网络的基本介绍(一)
    Android studio界面布局的简单介绍
    Android studio初见及结构分析
    JDBC实现Mysqual的增删改查
    BufferedReader统计TXT文本
    JAVA的异常处理
  • 原文地址:https://www.cnblogs.com/ainima/p/6331688.html
Copyright © 2011-2022 走看看