当前位置:   article > 正文

【Java02】Java中数组的定义与初始化

【Java02】Java中数组的定义与初始化

Java中的数组(1)

1. 理解Java中的数组

Java中的数组是一种数据类型,具体来说,是一种引用类型。

例如int是基本类型,int[]是引用类型。

创建int[]类型的对象(实例),实际上就是创建一个数组。

2. 定义数组

Java支持两种数组定义方式:

type[] arrayName;
type arrayName[];
  • 1
  • 2

推荐第一种方式。这种方式容易让人理解,数据类型是type[],对象名称是arrayName

第二种方式有些老旧了。

由于数组是一种引用变量(也就是一个指针),所以定义的时候还没有指向任何有效的内存空间,因此在定义数组的时候不能指定数组的长度,也不能直接使用。必须进行初始化。

3. 数组的初始化

Java支持两种数组的初始化方式:

  • 静态初始化
  • 动态初始化
3.1 静态初始化
arrayName = new type[] {e1, e2, ...};
  • 1

注意数组元素值的类型必须与new之后的type相同,或者是其子类的实例。

Object[] objArr;
// String是Object的子类
objArr = new String[] {"Java", "Python"};

Object[] objArr2;
objArr2 = new Object[] {"Java", "Python"};
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

静态初始化还可以简写为如下形式:

type[] arrayName = {e1, e2, ...};
  • 1

这种写法是定义和初始化同时完成。

int[] a = {1, 2, 3, 4};
  • 1
3.2 动态初始化

动态初始化只指定数组长度,初始值由系统默认指定。

arrayName = new type[length];
  • 1

其中lengthint类型,表示数组长度。

系统默认指定:

  • byte, short, int, long -> 0;
  • float, double -> 0.0;
  • char -> ‘\u0000’;
  • boolean -> false;
  • 其他引用类型 -> null;
3.3 利用var来定义变量

可以使用var让系统自动推断变量类型,既可以用于静态初始化,也可以用于动态初始化。

var names = new String[] {"Java", "Python"};
var weightArr = new double[4];
  • 1
  • 2
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/702833
推荐阅读
相关标签
  

闽ICP备14008679号