int javaGraphic[] = new int[0x1fa400];怎么样转换成一个byte[].在线等???

解决方案 »

  1.   

    int的位数超过了byte怎么办?LZ怎么截取?
      

  2.   

    循环,将里面的每一个元素都取出来,然后添加到byte[]里面去。不知道有没有什么现成的API呢?
    System.arrayCopy好像不可以实现不同类型的数组的复制
      

  3.   

    先把new int[0x1fa400]转成INTEGER[]型 
    然后通过 Integer.valueOf("FFFF",16).toString())将16进制转成10进制, 
    然后再通过Integer.toBinaryString(int i),将得到的10进制转化成而进制 
    也就是楼主要的byte[].了  
      

  4.   


    class Test1

    public static void main(String[] args)

    int[] i={2,8,9,999};
    byte[] b=new byte[i.length];
    for(int j=0;j<i.length;j++){b[j]=(byte)i[j];System.out.print(b[j]+"\t");}//可惜的是超出范围的溢出了,不知道能否满足楼主需求.