1. 程式人生 > >Java基礎面試題:使用最快的效率將2變成8

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