欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于java中byte數(shù)組與int類型的轉(zhuǎn)換(兩種方法)

 更新時間:2016年08月23日 10:08:48   投稿:jingxian  
下面小編就為大家?guī)硪黄趈ava中byte數(shù)組與int類型的轉(zhuǎn)換(兩種方法)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

java中byte數(shù)組與int類型的轉(zhuǎn)換,在網(wǎng)絡(luò)編程中這個算法是最基本的算法,我們都知道,在socket傳輸中,發(fā)送、者接收的數(shù)據(jù)都是 byte數(shù)組,但是int類型是4個byte組成的,如何把一個整形int轉(zhuǎn)換成byte數(shù)組,同時如何把一個長度為4的byte數(shù)組轉(zhuǎn)換為int類型。下面有兩種方式。

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; 
} 

public static int byte2int(byte[] res) { 
// 一個byte數(shù)據(jù)左移24位變成0x??000000,再右移8位變成0x00??0000 

int targets = (res[0] & 0xff) | ((res[1] << 8) & 0xff00) // | 表示安位或 
| ((res[2] << 24) >>> 8) | (res[3] << 24); 
return targets; 
} 

第二種

public static void main(String[] args) { 
    ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
    DataOutputStream dos = new DataOutputStream(baos); 
    try { 
      dos.writeByte(4); 
      dos.writeByte(1); 
      dos.writeByte(1); 
      dos.writeShort(217); 
     } catch (IOException e) { 
    e.printStackTrace(); 
  } 
 
  byte[] aa = baos.toByteArray(); 
  ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); 
  DataInputStream dis = new DataInputStream(bais); 
 
  try { 
    System.out.println(dis.readByte()); 
    System.out.println(dis.readByte()); 
    System.out.println(dis.readByte()); 
    System.out.println(dis.readShort()); 
  } catch (IOException e) { 
    e.printStackTrace(); 
  } 
  try { 
    dos.close(); 
    dis.close(); 
  } catch (IOException e) { 
    e.printStackTrace(); 
  } 
} 

以上這篇基于java中byte數(shù)組與int類型的轉(zhuǎn)換(兩種方法)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 模擬簡單Java線程池的方法詳解

    模擬簡單Java線程池的方法詳解

    這篇文章主要為大家詳細(xì)介紹了模擬簡單Java線程池的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • Java中Https發(fā)送POST請求[親測可用]

    Java中Https發(fā)送POST請求[親測可用]

    這篇文章主要介紹了Java中Https發(fā)送POST請求[親測可用],本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-05-05
  • java String 類的一些理解 關(guān)于==、equals、null

    java String 類的一些理解 關(guān)于==、equals、null

    在對字符串的相等判斷,==判斷的是地址是否相同,equal()判斷的是字符值是否相同。大多數(shù)時候==跟equal()的結(jié)果都是相同的。
    2009-06-06
  • Java微信公眾平臺之消息管理

    Java微信公眾平臺之消息管理

    這篇文章主要為大家詳細(xì)介紹了Java微信公眾平臺之消息管理的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • Java之?dāng)?shù)組在指定位置插入元素實現(xiàn)

    Java之?dāng)?shù)組在指定位置插入元素實現(xiàn)

    本文主要介紹了Java之?dāng)?shù)組在指定位置插入元素實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • Stream distinct根據(jù)list某個字段去重的解決方案

    Stream distinct根據(jù)list某個字段去重的解決方案

    這篇文章主要介紹了Stream distinct根據(jù)list某個字段去重,stream的distinct去重方法,是根據(jù) Object.equals,和 Object.hashCode這兩個方法來判斷是否重復(fù)的,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • java開發(fā)CPU流水線與指令亂序執(zhí)行詳解

    java開發(fā)CPU流水線與指令亂序執(zhí)行詳解

    這篇文章主要為大家介紹了java開發(fā)CPU流水線與指令亂序執(zhí)行詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • Mybatis如何實現(xiàn)@Select等注解動態(tài)組合SQL語句

    Mybatis如何實現(xiàn)@Select等注解動態(tài)組合SQL語句

    這篇文章主要介紹了Mybatis如何實現(xiàn)@Select等注解動態(tài)組合SQL語句,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • SpringBoot內(nèi)存數(shù)據(jù)導(dǎo)出成Excel的實現(xiàn)方法

    SpringBoot內(nèi)存數(shù)據(jù)導(dǎo)出成Excel的實現(xiàn)方法

    這篇文章主要給大家介紹了關(guān)于SpringBoot內(nèi)存數(shù)據(jù)導(dǎo)出成Excel的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • SpringCloud?Eureka服務(wù)注冊中心應(yīng)用入門詳解

    SpringCloud?Eureka服務(wù)注冊中心應(yīng)用入門詳解

    這篇文章主要介紹了Spring?Cloud?Eureka服務(wù)注冊中心入門流程分析,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07

最新評論