数组声明之间的区别

时间:2012-03-04 15:51:47

标签: java variables object

int[] a = new int[]{1,2,3};

int[] b = {1,2,3};

a和b有什么区别?我是对的,首先是对象,'a'是链接,第二是原始类型,'b'是变量?但是第一个阵列有哪些优点/缺点?

1 个答案:

答案 0 :(得分:5)

初始化中,就像你在那里一样,它们之间没有任何区别。它们产生相同的字节码。请注意,您必须使用分配中的第一个表单:

int[] b;
b = {1,2,3}; // <== Syntax error
  

我是对的,首先是对象,'a'是链接,第二是原始类型,'b'是变量?

不,在这两种情况下,您都有一个变量(ab),这是数组的引用。