Java 我们声明数组的方式有什么不同吗? int[]a=新的int[]{1,2,3}
及Java 我们声明数组的方式有什么不同吗? int[]a=新的int[]{1,2,3},java,Java,及 int[]a={1,2,3} 它们之间有什么实际区别吗?它们是等价的,两者之间没有区别 new关键字创建一个对象。。你正在创造。。一个,它是一个对象 见: 在Java编程语言中,数组是对象 第二种形式只是第一种形式的语法速记。它们编译成完全相同的字节码。看看编译类文件中的字节码,没有区别 public class XFace { public void test1(){ int[] a = new int[] {1, 2, 3}; } pu
int[]a={1,2,3}代码>
它们之间有什么实际区别吗?它们是等价的,两者之间没有区别
new
关键字创建一个对象。。你正在创造。。一个,它是一个对象
见:
在Java编程语言中,数组是对象
第二种形式只是第一种形式的语法速记。它们编译成完全相同的字节码。看看编译类文件中的字节码,没有区别
public class XFace {
public void test1(){
int[] a = new int[] {1, 2, 3};
}
public void test2(){
int[] a = {1, 2, 3};
}
}
Compiled from "XFace.java"
public class XFace extends java.lang.Objec
public XFace();
Code:
0: aload_0
1: invokespecial #8; //Method java/
4: return
public void test1();
Code:
0: iconst_3
1: newarray int
3: dup
4: iconst_0
5: iconst_1
6: iastore
7: dup
8: iconst_1
9: iconst_2
10: iastore
11: dup
12: iconst_2
13: iconst_3
14: iastore
15: astore_1
16: return
public void test2();
Code:
0: iconst_3
1: newarray int
3: dup
4: iconst_0
5: iconst_1
6: iastore
7: dup
8: iconst_1
9: iconst_2
10: iastore
11: dup
12: iconst_2
13: iconst_3
14: iastore
15: astore_1
16: return
}
希望对您有所帮助,谢谢。我想问题是这样的:引擎盖下面有什么棘手的事情吗?类似于“newstring”(“blabla”)“否。Java中没有数组池
String a=“hello”代码>和字符串a=新字符串(“你好”)代码>不同。@ferrerverck您可以看到这两个的字节码,它将非常相同。