赞
踩
Java中的数组是一种数据类型,具体来说,是一种引用类型。
例如int
是基本类型,int[]
是引用类型。
创建int[]
类型的对象(实例),实际上就是创建一个数组。
Java支持两种数组定义方式:
type[] arrayName;
type arrayName[];
推荐第一种方式。这种方式容易让人理解,数据类型是type[]
,对象名称是arrayName
。
第二种方式有些老旧了。
由于数组是一种引用变量(也就是一个指针),所以定义的时候还没有指向任何有效的内存空间,因此在定义数组的时候不能指定数组的长度,也不能直接使用。必须进行初始化。
Java支持两种数组的初始化方式:
arrayName = new type[] {e1, e2, ...};
注意数组元素值的类型必须与new
之后的type
相同,或者是其子类的实例。
Object[] objArr;
// String是Object的子类
objArr = new String[] {"Java", "Python"};
Object[] objArr2;
objArr2 = new Object[] {"Java", "Python"};
静态初始化还可以简写为如下形式:
type[] arrayName = {e1, e2, ...};
这种写法是定义和初始化同时完成。
int[] a = {1, 2, 3, 4};
动态初始化只指定数组长度,初始值由系统默认指定。
arrayName = new type[length];
其中length
是int
类型,表示数组长度。
系统默认指定:
- byte, short, int, long -> 0;
- float, double -> 0.0;
- char -> ‘\u0000’;
- boolean -> false;
- 其他引用类型 -> null;
可以使用var
让系统自动推断变量类型,既可以用于静态初始化,也可以用于动态初始化。
var names = new String[] {"Java", "Python"};
var weightArr = new double[4];
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。