int 类型与 byte类型进行相互转换

int 类型与 byte类型进行相互转换
文章分类:Java编程
代码1:
将int类型转换为byte数组:
         int n = 12345;
        byte[] b = new byte[4];
        b[0] = (byte)n;
        b[1] = (byte)(n >> ;
        b[2] = (byte)(n >> 16);
        b[3] = (byte)(n >> 24);
       点评:该代码结构清晰,执行效率高,在存储时将int类型的4个字节按照从低到高的顺序依次存储到byte数组b中,
       利用移位和byte类型的强制转换轻松实现int类型中4个字节的分割。 
将byte数组转换为int类型:
int m = (b[0] & 0xff) | ((b[1] << & 0xff00) |
((b[2] << 16) & 0xff0000) |((b[3] << 24) & 0xff000000); 



代码2:
将int转换为byte数组
   int n = 12345;
   String s = String.valueOf(n);
   byte[] b = s.getBytes();
将byte数组转换为int
   String s1 = new String(b1);
   int m = Integer.parseInt(s1);
       点评:代码2虽然在代码行数上比代码1少,但是无论是在程序的执行效率还是内存使用上都比代码2差了很多,
       每次转换时都需要生成一个String对象,这样不但浪费了内存,也降低了程序的执行速度。



转载自http://blog.csdn.net/Mailbomb/archive/2010/05/31/5636108.aspx

你可能感兴趣的:(编程,.net,Blog)