在Java中不使用'new'关键字声明数组

以下两个声明之间有什么区别?

int arr[] = new int [5];

int arr1[] = {1,2,3,4,5};

arr1在堆栈上还是在堆上声明?

回答:

一个明显的区别是,一个全为零,另一个包含[1..5]。

但这是唯一的区别。两者都是5元素整数数组,都以相同的方式分配。用大括号声明不只是语法上的方便new

请注意,只有在声明数组时才能使用此形式:

int[] blah = {}

但不是

int[] blah;

blah = {};

要么

return {};

对象(数组是对象)在堆上分配。

以上是 在Java中不使用'new'关键字声明数组 的全部内容, 来源链接: utcz.com/qa/401189.html

回到顶部