之前的项目中,在socket通信的时候需要传int类型的值,不过java中outputsteam貌似不能直接传int类型,只能传byte[],所以在这里记录一下int和byte[]互转的方法。
/** * int转byte[] */ public static byte[] inttobytes(int i) { byte[] bytes = new byte[4]; bytes[0] = (byte) (i & 0xff); bytes[1] = (byte) ((i >> 8) & 0xff); bytes[2] = (byte) ((i >> 16) & 0xff); bytes[3] = (byte) ((i >> 24) & 0xff); return bytes; }
接收的时候再转一下即可
/** * byte[]转int */ public static int bytestoint(byte[] bytes) { int i; i = (int) ((bytes[0] & 0xff) | ((bytes[1] & 0xff) << 8) | ((bytes[2] & 0xff) << 16) | ((bytes[3] & 0xff) << 24)); return i; }
以上所述是小编给大家介绍的在java中int和byte[]的相互转换,希望对大家有所帮助
您可能感兴趣的文章:
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!
网友评论