这里对java中整数与byte数组的转换进行了实现,平时的项目中很少用的到,但是特定需求的时候还是需要的,这里就记录下,亲测可用,
实现代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
public class NumberUtil { /** * int整数转换为4字节的byte数组 * * @param i * 整数 * @return byte数组 */ public static byte [] intToByte4( int i) { byte [] targets = new byte [ 4 ]; targets[ 3 ] = ( byte ) (i & 0xFF ); targets[ 2 ] = ( byte ) (i >> 8 & 0xFF ); targets[ 1 ] = ( byte ) (i >> 16 & 0xFF ); targets[ 0 ] = ( byte ) (i >> 24 & 0xFF ); return targets; } /** * long整数转换为8字节的byte数组 * * @param lo * long整数 * @return byte数组 */ public static byte [] longToByte8( long lo) { byte [] targets = new byte [ 8 ]; for ( int i = 0 ; i < 8 ; i++) { int offset = (targets.length - 1 - i) * 8 ; targets[i] = ( byte ) ((lo >>> offset) & 0xFF ); } return targets; } /** * short整数转换为2字节的byte数组 * * @param s * short整数 * @return byte数组 */ public static byte [] unsignedShortToByte2( int s) { byte [] targets = new byte [ 2 ]; targets[ 0 ] = ( byte ) (s >> 8 & 0xFF ); targets[ 1 ] = ( byte ) (s & 0xFF ); return targets; } /** * byte数组转换为无符号short整数 * * @param bytes * byte数组 * @return short整数 */ public static int byte2ToUnsignedShort( byte [] bytes) { return byte2ToUnsignedShort(bytes, 0 ); } /** * byte数组转换为无符号short整数 * * @param bytes * byte数组 * @param off * 开始位置 * @return short整数 */ public static int byte2ToUnsignedShort( byte [] bytes, int off) { int high = bytes[off]; int low = bytes[off + 1 ]; return (high << 8 & 0xFF00 ) | (low & 0xFF ); } /** * byte数组转换为int整数 * * @param bytes * byte数组 * @param off * 开始位置 * @return int整数 */ public static int byte4ToInt( byte [] bytes, int off) { int b0 = bytes[off] & 0xFF ; int b1 = bytes[off + 1 ] & 0xFF ; int b2 = bytes[off + 2 ] & 0xFF ; int b3 = bytes[off + 3 ] & 0xFF ; return (b0 << 24 ) | (b1 << 16 ) | (b2 << 8 ) | b3; } } |
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
原文链接:http://blog.csdn.net/aotian16/article/details/9859213