java下整数转成字节数组
2013-08-08 17:40
218 查看
java下写socket通信的时候,协议可能是以2字节数字表示,在java下好像没有直接的方法将数字转成字节数组,于是就在别人的方法的基础上改进,原来的方法字节顺序存放不对,会导致服务端下转换会出问题。现在这个问题已经改进了,大家可以参考一下。
public static byte[] intToBytes(int value)
{
byte[] b = new byte[4];
for (int i = 0; i < 4; i++)
{
b[ i] = (byte)((value >> (8 * i)) & 0xFF);
}
return b;
}
public static int bytesToInt(byte[] b)
{
int value = 0;
for (int i = 0; i < b.length && i < 4; i++)
{
value += (b[i] & 0xFF) << (8 * i);
}
return value;
}
public static byte[] shortToBytes(short value)
{
byte[] b = new byte[2];
for (int i = 0; i < 2; i++)
{
b[ i] = (byte)((value >> (8 * i)) & 0xFF);
}
return b;
}
public static short bytesToShort(byte[] b)
{
int value = 0;
for (int i = 0; i < b.length && i < 2; i++)
{
value += (b[i] & 0xFF) << (8 * i);
}
return (short)value;
}
public static byte[] intToBytes(int value)
{
byte[] b = new byte[4];
for (int i = 0; i < 4; i++)
{
b[ i] = (byte)((value >> (8 * i)) & 0xFF);
}
return b;
}
public static int bytesToInt(byte[] b)
{
int value = 0;
for (int i = 0; i < b.length && i < 4; i++)
{
value += (b[i] & 0xFF) << (8 * i);
}
return value;
}
public static byte[] shortToBytes(short value)
{
byte[] b = new byte[2];
for (int i = 0; i < 2; i++)
{
b[ i] = (byte)((value >> (8 * i)) & 0xFF);
}
return b;
}
public static short bytesToShort(byte[] b)
{
int value = 0;
for (int i = 0; i < b.length && i < 2; i++)
{
value += (b[i] & 0xFF) << (8 * i);
}
return (short)value;
}
相关文章推荐
- 主题:Java整数-字节,字节-字符,字节数组-十六进制字符串转换
- Java中用字节数组表示整数和用整数表示字节数组
- Java整数-字节,字节-字符,字节数组-十六进制字符串转换
- Java整数-字节,字节-字符,字节数组-十六进制字符串转换
- java对获取的字节数组进行处理
- java--字节数组输入、输出流
- (旋转数组问题)给定一个整数类型的循环有序数组,求循环数组的特定值,使用二分查找法(JAVA实现)
- C#、Java有关16进制字符串和字节数组之间的转换
- java中字节数组转换为字符串
- java 输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果
- java二进制,字节数组,字符,十六进制,BCD编码转换
- java 代码转换音频数据格式(字节数组转换)
- Java中二进制、十进制、十六进制及ASCII码与String及字节数组与十六进制之间的转换
- java 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。
- Java中二进制、十进制、十六进制及ASCII码与String及字节数组与十六进制之间的转换
- Java四类八种数据类型和字节数组的进制
- Java 十六进制转字节数组
- 将一个字节数组从任意字节offset开始,长为len的字节转换为整数
- java实现linux中gzip压缩解压缩算法:byte[]字节数组,文件,字符串,数据流的压缩解压缩
- Java数组-数组的应用-应用查表法将十进制整数转化为16进制-2