Java Long highestOneBit()方法

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

1 语法

public static long highestOneBit(long i)

2 参数

i :这是long 值。

3 返回值

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

4 示例 

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * Java Long highestOneBit()方法
 */
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

 

热门文章

优秀文章