国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java byte數組與int,long,short,byte的轉換實現方法

java byte數組與int,long,short,byte的轉換實現方法

2020-06-21 15:19jingxian JAVA教程

下面小編就為大家帶來一篇java byte數組與int,long,short,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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
public class DataTypeChangeHelper {
  /**
   * 將一個單字節的byte轉換成32位的int
   *
   * @param b
   *      byte
   * @return convert result
   */
  public static int unsignedByteToInt(byte b) {
    return (int) b & 0xFF;
  }
 
  /**
   * 將一個單字節的Byte轉換成十六進制的數
   *
   * @param b
   *      byte
   * @return convert result
   */
  public static String byteToHex(byte b) {
    int i = b & 0xFF;
    return Integer.toHexString(i);
  }
 
  /**
   * 將一個4byte的數組轉換成32位的int
   *
   * @param buf
   *      bytes buffer
   * @param byte[]中開始轉換的位置
   * @return convert result
   */
  public static long unsigned4BytesToInt(byte[] buf, int pos) {
    int firstByte = 0;
    int secondByte = 0;
    int thirdByte = 0;
    int fourthByte = 0;
    int index = pos;
    firstByte = (0x000000FF & ((int) buf[index]));
    secondByte = (0x000000FF & ((int) buf[index + 1]));
    thirdByte = (0x000000FF & ((int) buf[index + 2]));
    fourthByte = (0x000000FF & ((int) buf[index + 3]));
    index = index + 4;
    return ((long) (firstByte << 24 | secondByte << 16 | thirdByte << 8 | fourthByte)) & 0xFFFFFFFFL;
  }
 
  /**
   * 將16位的short轉換成byte數組
   *
   * @param s
   *      short
   * @return byte[] 長度為2
   * */
  public static byte[] shortToByteArray(short s) {
    byte[] targets = new byte[2];
    for (int i = 0; i < 2; i++) {
      int offset = (targets.length - 1 - i) * 8;
      targets[i] = (byte) ((s >>> offset) & 0xff);
    }
    return targets;
  }
 
  /**
   * 將32位整數轉換成長度為4的byte數組
   *
   * @param s
   *      int
   * @return byte[]
   * */
  public static byte[] intToByteArray(int s) {
    byte[] targets = new byte[2];
    for (int i = 0; i < 4; i++) {
      int offset = (targets.length - 1 - i) * 8;
      targets[i] = (byte) ((s >>> offset) & 0xff);
    }
    return targets;
  }
 
  /**
   * long to byte[]
   *
   * @param s
   *      long
   * @return byte[]
   * */
  public static byte[] longToByteArray(long s) {
    byte[] targets = new byte[2];
    for (int i = 0; i < 8; i++) {
      int offset = (targets.length - 1 - i) * 8;
      targets[i] = (byte) ((s >>> offset) & 0xff);
    }
    return targets;
  }
 
  /**32位int轉byte[]*/
  public static byte[] int2byte(int res) {
    byte[] targets = new byte[4];
    targets[0] = (byte) (res & 0xff);// 最低位
    targets[1] = (byte) ((res >> 8) & 0xff);// 次低位
    targets[2] = (byte) ((res >> 16) & 0xff);// 次高位
    targets[3] = (byte) (res >>> 24);// 最高位,無符號右移。
    return targets;
  }
 
  /**
   * 將長度為2的byte數組轉換為16位int
   *
   * @param res
   *      byte[]
   * @return int
   * */
  public static int byte2int(byte[] res) {
    // res = InversionByte(res);
    // 一個byte數據左移24位變成0x??000000,再右移8位變成0x00??0000
    int targets = (res[0] & 0xff) | ((res[1] << 8) & 0xff00); // | 表示安位或
    return targets;
  }
}

以上就是小編為大家帶來的java byte數組與int,long,short,byte的轉換實現方法全部內容了,希望大家多多支持服務器之家~

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 可以免费看黄的网站 | 91av在| 在线中文字幕第一页 | 91精品国产91久久久久久最新 | 国产精品高潮呻吟久久av野狼 | 国产高清在线精品一区二区三区 | 羞羞的网站 | 久久午夜剧场 | 国产成人亚洲综合 | 成人一区二区在线 | 国产一区二区三区欧美 | 日韩色av | 欧美成年网站 | 亚洲欧洲精品成人久久奇米网 | av电影一区二区 | 欧美一区二区公司 | av最新在线 | 天天夜夜操 | 2018自拍偷拍 | 亚洲视频免费观看 | 久久国| 国产色在线 | 日本精品视频 | 亚洲一区二区三区在线 | 精品国产一区二区三区日日嗨 | 国产在线国产 | 日韩黄色片免费看 | 一区二区三区久久 | 日韩av色| 免费看黄的视频网站 | 久久精品视频一区 | 亚洲区视频 | 免费成人黄色大片 | 成人影院一区二区 | 狠狠色综合网站久久久久久久 | 啊v视频| 亚洲一区二区在线看 | 91免费网| 九九久久九九 | 中文字幕亚洲欧美日韩在线不卡 | 精品少妇一区二区三区在线播放 |