------- android培训、java培训、期待与您交流! ----------
在前面的博文当中,我们讲到了在java中的数据分为基本类型和引用类型。
而引用类型又包括类引用类型,接口引用类型以及数组类型。本篇博文将重
点介绍引用类型中的数组类型。
所谓数组顾名思义就是指一组数据的集合,数组中的每个数据被称作元素。
并且数组中的元素可以是任意类型(包括基本类型和引用类型),但是同一
个数组中只能存放类型相同的元素,以下是创建数组的基本步骤:
(1)声明一个数组类型的变量,简称为数组变量。
(2)用new语句构造数组2的实例。new语句为数组分配内存,并且为数组中
的每一个元素赋予默认值。
(3)初始化,也就是为数组中的每一个元素设置合适的初始值。
1.数组变量的声明。
以下代码分别声明了两个数组类型的引用变量,分别为int类型数组变量,以及
char类型数组变量。
int[] a;
char[] b;
二维数组的声明形式如下三种:
int [][]x;
int []x[];
int x[][];
在声明数组变量时,不能指定数组的长度,以下代码编译失败:
int x[2];//编译失败
2.数组对象的创建也跟类类型一样,可以使用new关键字来创建。
int[] x=new int[5];
java虚拟机在使用new语句创建以上数组对象时实际上做了以下3件事情:
2.1在堆区中为数组分配内存空间,以上代码中创建了一个包含5个元素的int数组,
每个元素都是int类型,在内存中占4个字节,因此整个数组对象在内存中占用20个字节。
2.2为数组中的每一个元素赋予默认值。以上int类型的数组中的元素都是int类型,因此,
他的默认值为0.
2.3返回一个数组对象的引用地址。
必须要注意的是,用new语句创建数组时,需要指定数组长度(与声明恰好相反)。此长度
用来表示数组中的元素的数目。而且这个长度被指定后将不可修改。但是数组类型的引用可以
改变其所指向的数组对象。
int [] arr=new int[5];//创建一个数组类型变量arr指向一个数组对象。
arr=new int[5];//改变arr所指向的数组对象
3.访问数组的元素和长度。
数组中的每一个元素都有索引,或者叫做下标。其第一个元素的索引为0,后面元素的索引值都为前面的
值加上1。用以下格式分别表示数组中元素的引用:
数组名[元素索引值]
int[] arr=new int[6];
arr[0]=1;//将数组中的第二个元素赋值为1
以上代码当中通过元素的引用将数组中其中一个元素的改变,这是对数组元素的最基本操作之一。
此外在java当中,所有的数组都有一个名字叫做length的基本属性,用于表示该数组的长度。这一
属性值可以读取,但是不能修改。以下代码展示length的用法以及作用。
int[] arr=new int[6];
system.out.println(arr.length);//打印6
4.数组的初始化中应该注意以下几点:
4.1前面讲到数组被创建之后,数组中的每一个元素都将被赋予相应类型的默认值。另外,我们还可以
在程序中对数组元素进行显示初始化。例如以下代码:
<span style="font-size:12px;">int[] arr=new int[]{1,3,5,7,9}//显示创建一个int数组。</span>
4.2以下显示创建失败,原因是不能指出数组长度。
<span style="font-size:12px;">int[] arr=new int[5]{1,3,5,7,9}//编译失败</span>
4.3以下方式也会编译失败.
<span style="font-size:12px;">int[] x;
x={1,3,5,6,7,9};//编译失败</span>