Java.math.BigInteger.getLowestSetBit() 方法

描述

java.math.BigInteger.getLowestSetBit() 返回此 BigInteger 中最右侧(最低位)一位的索引(最右侧一位右侧的零位数)。 如果此 BigInteger 不包含一位,则返回 -1。 它计算 (this == 0?-1 : log2(this & -this))。


声明

以下是 java.math.BigInteger.getLowestSetBit() 方法的声明。

public int getLowestSetBit()

参数

NA


返回值

此方法返回此 BigInteger 中最右边一位的索引。


异常

NA


示例

下面的例子展示了 math.BigInteger.getLowestSetBit() 方法的使用。

package com.tutorialspoint;

import java.math.*;

public class BigIntegerDemo {

   public static void main(String[] args) {

      // create 2 BigInteger objects
      BigInteger bi1, bi2;

      // create 2 int objects
      int i1, i2;

      // assign values to bi1, bi2
      bi1 = new BigInteger("8");//1000
      bi2 = new BigInteger("7");//0111

      // perform getLowestSetBit on bi1, bi2
      i1 = bi1.getLowestSetBit();
      i2 = bi2.getLowestSetBit();

      String str1 = "Index of rightmost one bit in " +bi1+ " is " +i1;
      String str2 = "Index of rightmost one bit in " +bi2+ " is " +i2;

      // print i1, i2 values
      System.out.println( str1 );
      System.out.println( str2 );
   }
}

让我们编译并运行上面的程序,这将产生下面的结果 −

Index of rightmost one bit in 8 is 3
Index of rightmost one bit in 7 is 0