我得到了一个带有可变参数列表的函数。根据类型说明符,所有其他参数具有不同的含义。在具体情况下,除第一个参数外,所有参数都包含字节数组。我想将它们转换为二维字节数组:将可变参数列表投射到字节数组
function foo(byte type,Object ...parameters) {
...
switch(type) {
case 1: short ID=(short) parameters[0];
byte[][] payloads=(byte[][]) Arrays.copyOfRange(parameters,1,parameters.length); //exception here
...
}
...
}
的主叫用户呼叫使用
byte[] byteArray1=...;
byte[] byteArray2=...;
...
foo((byte)1,byteArray1,byteArray2,...);
代码看起来逻辑和编译功能,但那里有一个ClassCastException异常“对象不能转换为[ [B“只要我执行代码就抛出。
如何获取除第一个参数外的所有参数为二维字节数组?
对此评论没有评论,但是该评级是无效? – gorootde 2014-10-02 07:09:49