當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java BigInteger shiftRight()用法及代碼示例


先決條件:BigInteger基礎

java.math.BigInteger.shiftRight(int n)方法返回一個BigInteger,其值為(this >> n)。移位距離n可以為負,在這種情況下,此方法執行左移。 shiftRight()方法會將數字的二進製表示形式中的每個數字右移n次,並且將移位方向的最後一位替換為0。此shiftRight()方法計算底數(this /2^n)。

用法:


public BigInteger shiftRight(int n)

參數:該方法采用整數類型的一個參數n,該參數n以位為單位。

返回值:該方法將位右移n次後返回BigInteger。

異常:如果移位距離為Integer.MIN_VALUE,則該方法可能會引發ArithmeticException。

例子:

Input: BigInteger = 2300, n = 3
Output: 287
Explanation:
Binary Representation of 2300 = 100011111100
Shift distance, n = 3. 
After shifting 100011111100 right 3 times,
Binary Representation becomes 100011111
and Decimal equivalent of 100011111 is 287.

Input: BigInteger = 35000, n = 5
Output: 1093

以下示例程序旨在說明BigInteger的shiftRight(index)方法:

// Program to demonstrate shiftRight() 
// method of BigInteger  
  
import java.math.*; 
  
public class GFG { 
  
    public static void main(String[] args) 
    { 
  
        // Create BigInteger object 
        BigInteger biginteger = new BigInteger("2300"); 
  
        // Create a int i for Shift Distance 
        int i = 3; 
  
        // Call shiftRight() method on bigInteger at index i 
        // store the return value as BigInteger 
        BigInteger changedvalue = biginteger.shiftRight(i); 
  
        String result = "After applying shiftRight by Shift Distance " + i +  
        " on " + biginteger + " New Value is " + changedvalue; 
  
        // Print result 
        System.out.println(result); 
    } 
}
輸出:
After applying shiftRight by Shift Distance 3 on 2300 New Value is 287

參考: https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html#shiftRight(int)



相關用法


注:本文由純淨天空篩選整理自AmanSingh2210大神的英文原創作品 BigInteger shiftRight() Method in Java。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。