Java 程式從給定位置提取“k”位


從數字的給定位置提取 k 位涉及將數字轉換為其二進位制表示。以下是示例:-

Number = 20
Binary representation = 10100
k = 3
Position = 2
The bits extracted are 010 which represent 2.

演示此過程的程式如下。

示例

 線上演示

public class Example {
   public static void main (String[] args) {
      int number = 20, k = 3, pos = 2;
      int exNum = ((1 << k) - 1) & (number >> (pos - 1));
      System.out.println("Extract " + k + " bits from position " + pos + " in number " + number );
      System.out.println("The extracted number is " + exNum );
   }
}

輸出

Extract 3 bits from position 2 in number 20
The extracted number is 2

下面我們瞭解一下上述程式。

首先,定義數字、k 和位置的值。然後從數字的給定位置提取所需的 k 位。最後,顯示提取後的數字。演示此過程的程式碼片段如下:-

int number = 20, k = 3, pos = 2;
int exNum = ((1 << k) - 1) & (number >> (pos - 1));
System.out.println("Extract " + k + " bits from position " + pos + " in number " + number );
System.out.println("The extracted number is " + exNum );

更新於: 25-Jun-2020

454 次瀏覽

開啟你的職業

透過完成課程獲得認證

入門
廣告