【发布时间】:2015-07-08 06:46:48
【问题描述】:
看看这两个简单的程序:
方案一:
public class GenArray extends Applet {
byte[] myArray ={ (byte) 'M', (byte) 'o', (byte) 'd', (byte) 'e',
(byte) '1' };
}
方案二:
public class GenArray extends Applet {
byte[] myArray = new byte[5];
{
myArray[0] =(byte) 'M';
myArray[1] =(byte) 'o';
myArray[2] =(byte) 'd';
myArray[3] =(byte) 'e';
myArray[4] =(byte) '1';
}
}
我想知道Program-1最后一行的MyArray和Program-2最后一行的MyArray有什么区别吗? (有什么区别!)
【问题讨论】:
-
AFAIK,它们都编译成完全相同的字节码。
-
@immibis - 字节码相同。两者都调用
newarray,但在创建数组的第一种方法中只能在初始化期间进行
标签: java