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

java<<、>>、>>>移位操作方法

 更新時間:2017年06月19日 10:08:03   投稿:jingxian  
下面小編就為大家?guī)硪黄猨ava<<、>>、>>>移位操作方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

<<,有符號左移位,將運(yùn)算數(shù)的二進(jìn)制整體左移指定位數(shù),低位用0補(bǔ)齊。

int leftShift = 10;
System.out.println("十進(jìn)制:" + leftShift + ", 二進(jìn)制:" + Integer.toBinaryString(leftShift));
int newLeftShift = letfShift << 2;
System.out.println("左移2位后十進(jìn)制:" + newLeftShift + ", 左移2位后二進(jìn)制" + Integer.toBinaryString(newLeftShift)); //正整數(shù)x左移n位后的十進(jìn)制結(jié)果,x = x * 2^n

以上是正整數(shù),運(yùn)算結(jié)果如下。

接下來看看將負(fù)數(shù)進(jìn)行左移2位操作是什么情況,運(yùn)算結(jié)果如下。

為什么會-10的二進(jìn)制會出現(xiàn)這么多的1呢?仔細(xì)數(shù)一下剛好有32位。首先需要了解的是Java負(fù)數(shù)存儲是以補(bǔ)碼形式存儲的(補(bǔ)碼=反碼+1),10的二進(jìn)制是1010,它的反碼就是0101,再加1就是補(bǔ)碼0110。那為什么會多出來那么多1呢?這是因?yàn)閕nt型在Java中占8個字節(jié),剛好32位,10原碼的高位全是0,它的反碼自然高位就變成了1。所以整體左移2位,低位以0補(bǔ)齊,最后的運(yùn)算結(jié)果就是x = (|x| + 2^n)。

>>,有符號右移位,將運(yùn)算數(shù)的二進(jìn)制整體右移指定位數(shù),整數(shù)高位用0補(bǔ)齊,負(fù)數(shù)高位用1補(bǔ)齊(保持負(fù)數(shù)符號不變)。

int rightShift = 10;
System.out.println("十進(jìn)制:" + rightShift + ", 二進(jìn)制:" + Integer.toBinaryString(rightShift));
int newRightShift = rightShift >> 2;
System.out.println("右移2位后十進(jìn)制:" + newRightShift + ", 右移2位后二進(jìn)制" + Integer.toBinaryString(newRightShift));  //右移n位后的運(yùn)算數(shù)x十進(jìn)制結(jié)果,x = x / 2

以上是正整數(shù),運(yùn)算結(jié)果如下。

接下來看看將負(fù)數(shù)進(jìn)行右移2位操作是什么情況,運(yùn)算結(jié)果如下。

負(fù)數(shù)的有符號右移基本原理還是和左移相同,不同的是結(jié)果的計算,因?yàn)檫@是有符號的右移,一直右移最后的結(jié)果就會是-1。歸納起來就是,如果運(yùn)算數(shù)是偶數(shù),那么它的運(yùn)算結(jié)果就是 x = -(|x| / 2),如果運(yùn)算數(shù)是奇數(shù),那么它的運(yùn)算結(jié)果就是 x = -(|x| / 2) - 1。

>>>,無符號右移位,不管正數(shù)還是負(fù)數(shù),高位都用0補(bǔ)齊(忽略符號位)

先看正數(shù),正數(shù)的>>>無符號右移位和>>有符號右移位計算結(jié)果相同

int rightShift = 10;
System.out.println("十進(jìn)制:" + rightShift + ", 二進(jìn)制:" + Integer.toBinaryString(rightShift));
int newRightShift = rightShift >>> 2;
System.out.println("右移2位后十進(jìn)制:" + newRightShift + ", 右移2位后二進(jìn)制" + Integer.toBinaryString(newRightShift));  //右移n位后的云算數(shù)x十進(jìn)制結(jié)果,x = x / 2

以上是正整數(shù),運(yùn)算結(jié)果如下。

接下來看負(fù)整數(shù),運(yùn)算結(jié)果如下。

雖然無符號移位后的二進(jìn)制和有符號移位后的二進(jìn)制看起來相同的,但結(jié)果大相徑庭,記住有符號右移位操作,實(shí)際上是忽略符號的算術(shù)操作,即高位統(tǒng)一補(bǔ)0。

以上這篇java<<、>>、>>>移位操作方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java建造者設(shè)計模式詳解

    Java建造者設(shè)計模式詳解

    這篇文章主要為大家詳細(xì)介紹了Java建造者設(shè)計模式,對建造者設(shè)計模式進(jìn)行分析理解,感興趣的小伙伴們可以參考一下
    2016-02-02
  • Spring中@Autowired和@Resource注解的使用區(qū)別詳解

    Spring中@Autowired和@Resource注解的使用區(qū)別詳解

    這篇文章主要介紹了Spring中@Autowired和@Resource注解的使用區(qū)別詳解,@Autowired默認(rèn)根據(jù)type進(jìn)行注入,找到與指定類型兼容的?Bean?并進(jìn)行注入,如果無法通過type匹配到對應(yīng)的?Bean?的話,會根據(jù)name進(jìn)行匹配,如果都匹配不到則拋出異常,需要的朋友可以參考下
    2023-11-11
  • 5分鐘搞懂java注解@Annotation的具體使用

    5分鐘搞懂java注解@Annotation的具體使用

    這篇文章主要介紹了5分鐘搞懂java注解@Annotation的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Java使用jxl包寫Excel文件適合列寬實(shí)現(xiàn)

    Java使用jxl包寫Excel文件適合列寬實(shí)現(xiàn)

    用jxl.jar包,讀寫過Excel文件。也沒有注意最適合列寬的問題,但是jxl.jar沒有提供最適合列寬的功能,上次用到寫了一下,可以基本實(shí)現(xiàn)最適合列寬。
    2013-11-11
  • 基于java編寫局域網(wǎng)多人聊天室

    基于java編寫局域網(wǎng)多人聊天室

    這篇文章主要為大家詳細(xì)介紹了基于java編寫局域網(wǎng)多人聊天室的相關(guān)資料,使用socket基于java編寫一個局域網(wǎng)聊天室,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • Java中靜態(tài)代理的使用與原理詳解

    Java中靜態(tài)代理的使用與原理詳解

    這篇文章主要介紹了Java中靜態(tài)代理的使用與原理詳解,代理模式是為一個對象提供一個替身,以控制對這個對象的訪問,即通過代理對象訪問目標(biāo)對象.這樣做的好處是:可以在目標(biāo)對象實(shí)現(xiàn)的基礎(chǔ)上,增強(qiáng)額外的功能操作,即擴(kuò)展目標(biāo)對象的功能,需要的朋友可以參考下
    2023-09-09
  • SpringBoot中使用@scheduled定時執(zhí)行任務(wù)的坑

    SpringBoot中使用@scheduled定時執(zhí)行任務(wù)的坑

    本文主要介紹了SpringBoot中使用@scheduled定時執(zhí)行任務(wù)的坑,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • 教你實(shí)現(xiàn)Java接口防刷

    教你實(shí)現(xiàn)Java接口防刷

    有些人會惡意提交,本文主要介紹了教你實(shí)現(xiàn)Java接口防刷,通過在一定時間內(nèi)限制同一用戶對同一個接口的請求次數(shù),具有一定的參考價值,感興趣的可以了解一下
    2024-05-05
  • apllo開源分布式配置中心詳解

    apllo開源分布式配置中心詳解

    這篇文章主要為大家介紹了apllo開源分布式配置中心部署詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • json如何解析混合數(shù)組對象到實(shí)體類的list集合里去

    json如何解析混合數(shù)組對象到實(shí)體類的list集合里去

    這篇文章主要介紹了json解析混合數(shù)組對象到實(shí)體類的list集合里去的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06

最新評論