Java 中底层byte数据操作

Java 中底层数据操作

  • int -> byte

循序手动操作

    public static byte[] intToBytes2(int n){
          byte[] b = new byte[4];

          for(int i = 0;i < 4;i++){
           b[i]=(byte)(n>>(24-i*8));  
      } 
      return b;
    }

利用API

 int v = 123456;
 byte[] bytes = ByteBuffer.allocate(4).putInt(v).array();

通用多类型方式

  ByteArrayOutputStream baos = new ByteArrayOutputStream();  
    DataOutputStream dos = new DataOutputStream(baos);  
    try {  
     
        dos.writeByte(-12);  
        dos.writeLong(12);  
        dos.writeChar('1');  
        dos.writeFloat(1.01f);  
        dos.writeUTF("嗯,是我");  
    } catch (IOException e) {  
        e.printStackTrace();  
    }  

当然还有很多方式,自己书写骚操作吧

你可能感兴趣的:(Java 中底层byte数据操作)