首页 > 代码库 > java——数组

java——数组

    数组是多个相同数据类型数组组合,其中数据类型是任何数据类型。

    数组变量是引用类型变量,数组可以作为对象,数组中的每一个元素相当于对象的成员变量,所以数组元素可以默认初始化。(博客java——变量分类有关于成员变量初始化的说明)。

一维数组

声明

type var[];或者type[] var

初始化

动态初始化:定义与数组元素分配和赋值分开操作

int a[];
a=new int[3];
a[0]=0;
a[1]=1;
a[2]=2;

静态初始化:定义的同时为数组元素分配空间并赋值

int a[]={1,2,3};

内存分析

class TestArray
{
	public static void main(String arg[])
	{
		int[] s;
		s=new int[5];
		for(int i=0;i<5;i++)
		{
			s[i]=i;
		}
	}
}

以上程序执行到最后,内存应该是这样的:

二维数组

二维数组可以看做以数组为元素的数组。

初始化

动态初始化(注:java中多维数组的声明和创建按照从高维到低维的顺序进行

int a[][]=new int[3][];
a[0]=new int[2];
a[1]=new int[4];
a[2]=new int[3];

静态初始化

int a[][]={{1,2},{2,3},{3,4}};

内存分析:

class TestArr
{
	public static void main(String arg[])
	{
		int s[][]=new int[3][];
		s[0]=new int[2];
		s[1]=new int[4];
		s[2]=new int[3];
		for(int i=0;i<a.length;i++)
		{
			for(int j=0;j<s[i].length;j++)
			{
				s[i][j]=i;
			}
		}
		
	}
}

以上程序执行到最后,内存应该是这样的


总结

    1.java中一维数组的元素是数据类型相同的变量,而二维数组就是将多个一维数组组合成数组,所以理解好一维很重要。2.数组是引用变量,可以作为一个对象,而它的元素就是成员变量。