国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

java中的移位運算符心得總結

2019-11-26 15:55:18
字體:
來源:轉載
供稿:網友

java中有三種移位運算符

<<      :     左移運算符,num << 1,相當于num乘以2

>>      :     右移運算符,num >> 1,相當于num除以2

>>>    :     無符號右移,忽略符號位,空位都以0補齊

下面來看看這些移位運算都是怎樣使用的

復制代碼 代碼如下:

/**
 *
 */
package com.b510.test;

/**
 * @author Jone Hongten
 * @create date:2013-11-2
 * @version 1.0
 */
public class Test {

    public static void main(String[] args) {
        int number = 10;
        //原始數二進制
        printInfo(number);
        number = number << 1;
        //左移一位
        printInfo(number);
        number = number >> 1;
        //右移一位
        printInfo(number);
    }

    /**
     * 輸出一個int的二進制數
     * @param num
     */
    private static void printInfo(int num){
        System.out.println(Integer.toBinaryString(num));
    }
}

運行結果為:

1010
10100
1010我們把上面的結果對齊一下:

43210      位數--------
 1010      十進制:10     原始數         number
10100      十進制:20     左移一位       number = number << 1;
 1010      十進制:10     右移一位       number = number >> 1;

 

看了上面的demo,現在是不是對左移和右移了解了很多了呢

對于:>>>

 無符號右移,忽略符號位,空位都以0補齊

value >>> num     --   num 指定要移位值value 移動的位數。

無符號右移的規則只記住一點:忽略了符號位擴展,0補最高位  無符號右移運算符>>> 只是對32位和64位的值有意義

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 丰城市| 西乌珠穆沁旗| 宜宾市| 四子王旗| 淮安市| 建瓯市| 临朐县| 延寿县| 四平市| 绩溪县| 游戏| 大足县| 临沭县| 巴里| 阿拉尔市| 仁寿县| 玛纳斯县| 云浮市| 青浦区| 兴山县| 惠来县| 那曲县| 康保县| 德惠市| 西盟| 贵阳市| 淮阳县| 侯马市| 达拉特旗| 淳化县| 分宜县| 祁连县| 襄垣县| 简阳市| 龙胜| 葫芦岛市| 金乡县| 察隅县| 京山县| 宝坻区| 民丰县|