Java基礎面試題:使用最快的效率將2變成8

Java基礎面試題:使用最快的效率將2變成8

原理:將被轉換的數字進行位移運算

package blog.csdn.net.karen.javasedemo;

/**
 * 位移運算演示
 * <p>
 * Created by Karen Chia on 2018/11/8
 */
public class OperatorDemo {

    public static void main(String[] args) {
        byte number1 = 2;
        byte res = (byte) (number1 << 2);
        System.out.println(res);
    }
}

演算過程

1 本文中將被轉換的數字定爲 byte 數據類型,只是爲了演示方便,定爲其它數據類型均可
2 表達式 number1 << 2 說明:將數字 number1 對應的二進制數左移2位,空出的低位使用“0”補足
3 數字 2 的二進制表示:byte類型佔內存空間爲1個字節,1個字節爲8個位

0 0 0 0 0 0 1 0

4 將2的二進制表示數左移2位

0 0 0 0 1 0

5 二進制數被移動後,空出的低位用“0”補齊

0 0 0 0 1 0 0 0

將以上二進制數轉換爲十進制表示,結果爲8

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章