(一)Java数组与内存控制
一、数组初始化
数组是绝大多数编程语言都会提供的一种复合结构。如果程序中需要多个相同类型的变量时,可以定义一个数组。
Java语言的数组变量是引用类型的变量。
1、Java数组初始化方式:
这里所说的初始化是指:为数组对象的元素分配内存空间,并为数组元素指定初始值。
java是一种静态语言,因此java数组是静态的。所以当数组被初始化之后,该数组的长度不可变。
Java数组的初始化方式有两种:静态初始化:显示指定数组元素初始值,由系统决定数组长度。动态初始化:给出数组长度,由系统为数组元素分配初始值。进行动态初始化时,系统将为数组元素分配初始值,规则如下:
整型:byte\short\int\long 初始值是0浮点型:float\double 初始值是0.0字符类型:char 初始值是'\u0000'布尔类型:boolean 初始值是false引用类型:类、接口、数组 初始值是null
示例代码如下:
package com.beijng.array;public class InitArray {public static void main(String[] args){//静态初始化String[] a = {"shanghai","beijing","henan"};//静态初始化String[] b = new String[]{"11","22"};//动态初始化String[] c = new String[4];System.out.println("a数组的长度="+a.length);System.out.println("b数组的长度="+b.length);System.out.println("c数组的长度="+c.length);}}
注意:(1)Java的数组变量是引用类型的变量,数组变量并不是数组本身,而是指向堆内存中的数组对象。package com.beijng.array;public class InitArray2 {public static void main(String[] args) {//定义int[]类型的数组变量,此时该变量并未指向任何有效内存int[] intArray;//静态初始化数组,上述变量指向该数组对象的内存intArray = new int[]{1,2,3,4,5};}}