位運算 1 << 4


static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16

查看HashMap源碼,發現這個static final int DEFAULT_INITIAL_CAPACITY = 1 << 4;  值為16。

這個是位移算法。

  例如:

4<<2

4的二進制是:0000 0100
<<表示往左移兩位:00 010000

只要把4轉換成二進制,往左移兩位,再轉換成10進制得出結果既是:16
更簡單的計算方法就是 4<< n 等效於 4 乘以 2的 N 次方


那十進制的數是怎樣轉化成二進制的數呢?有一個最簡單的方法,就是不斷除以2。余數寫在右邊。然后從最后一個得到的商倒回去(商余數排列起來),得到的數就是二進制要表達的結果了哦。舉幾個例子,如圖。







接下來學習把二進制的數轉化為十進制的數。從左邊第一位數乘以2的n-1次方(冪),n代表該數字從右到左數起的位數。加上從左邊第二位數乘以2的n-2次方。
依此類推,一直到最后一個數。一個數的0次方是1 (0除外),看圖認真學習。圖中^的符號就是表示次方(冪)的意思,在打不出的情況下,可以這樣表示的哦。









免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM