Netbeans中出现奇怪的“非法表达”错误

时间:2016-03-14 08:05:48

标签: java netbeans

在以下程序中,commandApdu类中的字节数组字段。问题是我的IDE(Netbeans)标记了

apdu.command = {(byte) 0x00, (byte)0xa4, (byte) 0x00, (byte) 0x00};

作为错误,消息非法开始表达,而可以使用以下代码:

byte[] bytes = {(byte) 0x00, (byte) 0xa4, (byte) 0x00, (byte) 0x00};
apdu.command = bytes;

第一个程序出了什么问题?

第一个程序: enter image description here

第二个计划: enter image description here

2 个答案:

答案 0 :(得分:1)

您需要使用以下命令初始化数组变量:

apdu.command = new byte[] {(byte) 0x00, (byte)0xa4, (byte) 0x00, (byte) 0x00};

您尝试的初始化仅在数组声明表达式中有效。

答案 1 :(得分:1)

数组语法{}只能用于初始化而不能用于赋值。

您需要使用apdu.command =new byte[] {(byte) 0x00, (byte)0xa4, (byte) 0x00, (byte) 0x00};