位置:首页 > Java技术 > java.lang > java.lang.Long.highestOneBit()方法实例

java.lang.Long.highestOneBit()方法实例

java.lang.Long.highestOneBit() 方法在指定long值返回一个long值至多单个1位,在最高位(“最左”)1位的位置。它返回零,如果指定的值没有一个位在其二进制补码表示法,即,如果它等于零。

声明

以下是java.lang.Long.highestOneBit()方法的声明

public static long highestOneBit(long i)

参数

  • i -- 这是long 值。

返回值

该方法返回一个long 值与单个1位,在指定的值最高的一阶位的位置,或者零,如果指定值本身等于零。

异常

  • NA

例子

下面的例子显示java.lang.Long.highestOneBit()方法的使用。

package com.yiibai;

import java.lang.*;

public class LongDemo {

   public static void main(String[] args) {

     long l = 220;
     System.out.println("Number = " + l);
    
     /* returns the string representation of the unsigned long value 
     represented by the argument in binary (base 2) */
     System.out.println("Binary = " + Long.toBinaryString(l));

     // returns the number of one-bits 
     System.out.println("Number of one bits = " + Long.bitCount(l));

     /* returns a long value with at most a single one-bit, in the position 
     of the highest-order ("leftmost") one-bit in the specified int value */ 
     System.out.println("Highest one bit = " + Long.highestOneBit(l));
   }
}  

让我们来编译和运行上面的程序,这将产生以下结果:

Number = 220
Binary = 11011100
Number of one bits = 5
Highest one bit = 128