两个不同的类,其中各有一个字段是对应上的。只是一个类是用byte[]形式存放,另一个用的int[]。
现在要将byte[]形式的值赋给int[],请问怎么转化?

解决方案 »

  1.   

    直接循环遍历就完毕了啊:
    byte[] bs = { (byte) 0xdc, (byte) 0x07 };
    int[] is = new int[bs.length];
    for (int i = 0; i < bs.length; i++) {
                is[i] = bs[i];
    }不过要注意的是,默认都是带符号的,也就是说 0xdc 是 负数。
      

  2.   

    public class Test {
    public static void main(String[] args) throws Exception {
    byte[] buf = new byte[2];
    buf[0] = 1;
    buf[1] = 2; int[] array = new int[buf.length];
    for(int i = 0 ;i < buf.length;i++){
    String hex = Integer.toHexString(buf[i] & 0xFF);
    array[i] = Integer.valueOf(hex);
    }
    }
    }
      

  3.   

    byte[] bs = { (byte) 0xdc, (byte) 0x07 };
    int[] is = new int[bs.length];
    for (int i = 0; i < bs.length; i++) {
      is[i] = bs[i];
    }就OK乐
      

  4.   

    对这(byte) 0xdc, (byte) 0x07 不是很懂 、麻烦讲解下?
      

  5.   

    0x 开头 就是16进制格式书写数字,比如 0x10
    0 开头 就是8进制格式书写数字,比如 010那么:
            System.out.println(010); // 结果是 8
            System.out.println(0x10); // 结果是 16但是,0xdc,是int型数值,要赋给byte型需要进行强制类型转换,所以才有:
      (byte)0xdc 
    这种写法,就是强制类型转换而已。