Java利用移位運算將int型分解成四個byte型的方法
更新時間:2018年12月11日 16:40:12 作者:哲別君
今天小編就為大家分享一篇關(guān)于Java利用移位運算將int型分解成四個byte型的方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
package 移位運算;
public class 移位運算 {
public static void main(String[] args) {
//00000111 01011011 11001101 00010101
int n=123456789; //n為需要進(jìn)行移位處理的32位int型初始值
byte[] a =chai(n);
for (int i = 0; i < a.length; i++) {
byte b=a[i];
System.out.print(b+" ");
}
//將數(shù)組重新合并成一個int型
System.out.println(hebing(a));
}
private static int hebing(byte[] arr) {
int n=0;
/*for (int i = 0; i < arr.length; i++) { //循環(huán)位或
n=n|arr[i]<<8*(arr.length-1)>>>8*i;
}
*
* n=n|arr[0]<<24;
* n=n|arr[1]<<24>>>8;
* n=n|arr[2]<<24>>>16;
* n=n|arr[3]<<24>>>24;
*/
for (int i = 0; i < arr.length; i++) { //循環(huán)位或
n+=(arr[i]&0x000000ff)<<8*(arr.length-1-i);
}
return n;
}
private static byte[] chai(int n) {
// 新建四個長度的byte數(shù)組
byte[] arr = new byte[4];
for (int i = 0; i < arr.length; i++) {
arr[i] = (byte) (n>>8*(arr.length-i-1));
}
return arr;
}
}

總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
您可能感興趣的文章:
相關(guān)文章
SpringBoot如何讀取application.properties配置文件
這篇文章主要介紹了SpringBoot如何讀取application.properties配置文件問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05
淺試仿?mapstruct實現(xiàn)微服務(wù)編排框架詳解
這篇文章主要為大家介紹了淺試仿?mapstruct實現(xiàn)微服務(wù)編排框架詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08
Java實現(xiàn)單鏈表反轉(zhuǎn)的多種方法總結(jié)
這篇文章主要給大家介紹了關(guān)于Java實現(xiàn)單鏈表反轉(zhuǎn)的多種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
詳解Spark?Sql在UDF中如何引用外部數(shù)據(jù)
這篇文章主要為大家介紹了詳解Spark?Sql在UDF中如何引用外部數(shù)據(jù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02
Java實現(xiàn)前端jsencrypt.js加密后端解密的示例代碼
這篇文章主要為大家詳細(xì)介紹了如何利用jsencrypt.js實現(xiàn)前端加密,利用Java實現(xiàn)后端解密的功能,文中的示例代碼講解詳細(xì),需要的可以參考一下2022-09-09

