Java中的数组(array)

 

数组对于每一门编程语言来讲都是最重要的数据结构之一,当然不同的编程语言对数组的实现以及处理也不尽相同。

 

数组(array):

  有限个相同类型元素变量放在一个整体,这个整体就叫做数组。数组中的每一个元素被称为数组元素,通常可以通过数组元素的索引(也叫下标,可以理解为一种编号,从0开始)来访问数组元素,包括数组元素的赋值(set)和取值(get)。

  在Java中数组属于引用类型,也是一种类型,Java中的数组要求所有的数组元素必须具有相同的数据类型,因此在一个数组中,数组元素的类型是唯一的,一个数组只能存储一种数据类型的数据,而不能存储多种数据类型的数据。

  一旦数组初始化完成,数组内存所占的空间也就被固定,因此数组的长度是不可改变的。即使把某个数组中所有元素的数据全部清空,其所占的空间仍然会被保留,该空间依然属于该数组,数组长度依然不会改变。数组既可以存放基本数据类型(如:int、char、boolean),也可以存放引用数据类型(如:String),只要数组的数组元素具有相同的类型就可以。

  数组在声明时必须要对其初始化。

数组的声明:

  首先必须声明数组的类型,再声明数组变量(也就是名字),才能在程序中使用它。

  语法:

  (数组的声明一般分为以下两种方法)

类型 变量名[];    //这种风格来自C/C++语言,但不常用,不是首选方法,意思是声明一个某某类型,叫什么的数组

类型[] 变量名;    //这种风格是Java的风格,常用,是首选方法,意思是声明一个某某类型的数组,叫什么

  (注意:声明了一个数组,仅仅只是声明,只是有这么一个名称而已,但是里面没有任何数据,因为没有初始化,所以Java会报错)

初始化:

  Java中声明了数组必须要对其初始化才可以使用。初始化就是为数组的数组元素分配内存空间,并为每个元素赋初始值。

  数组的初始化分以下两种:

    ①静态初始化:

      静态初始化指在声明数组时就为数组元素分配空间并赋值。

      语法:

dataType[] arrayName = new dataType[]{value1,value2,...,valuen};    //实际写法

dataType[] arrayName = {value1,value2,...,valuen};    //简化写法,一般常用

      如:

int[] a = new int[]{1,5,7,8,11};    //实际写法

int[] a = {1,5,7,8,11};    //简化写法,一般常用

    ②动态初始化:

      动态初始化指数组定义与数组分配空间与赋值的操作分开进行,动态初始化只指定数组的长度,由系统为每个数组元素指定初始值。

      语法:

dataType[] a = new dataType[arraySize];    //常用写法

dataTypr[] b;
b = new dataType[arraySize];    //不常用写法

  

      如:

int[] a = new int[5];    //常用写法,声明该数组长度为5
        
int[] b;
b = new int[5];        //不常用写法,实际含义只是将以上步骤拆分了而已

初始值:

  以下是系统为数组元素分配的默认初始值:

    1.数值型(byte、short、int、long):值为0。

    2.浮点型(float、double):值为0.0。

    3.字符型(char):值为\u0000(即空格)。

    4.布尔型(boolean):值为false。

    5.引用类型(类、接口、如:String字符串):值为null。

猜你喜欢

转载自www.cnblogs.com/joyfulcode/p/12460064.html
今日推荐