- Java.lang Package classes
- Java.lang - Home
- Java.lang - Boolean
- Java.lang - Byte
- Java.lang - Character
- Java.lang - Character.Subset
- Java.lang - Character.UnicodeBlock
- Java.lang - Class
- Java.lang - ClassLoader
- Java.lang - Compiler
- Java.lang - Double
- Java.lang - Enum
- Java.lang - Float
- Java.lang - InheritableThreadLocal
- Java.lang - Integer
- Java.lang - Long
- Java.lang - Math
- Java.lang - Number
- Java.lang - Object
- Java.lang - Package
- Java.lang - Process
- Java.lang - ProcessBuilder
- Java.lang - Runtime
- Java.lang - RuntimePermission
- Java.lang - SecurityManager
- Java.lang - Short
- Java.lang - StackTraceElement
- Java.lang - StrictMath
- Java.lang - String
- Java.lang - StringBuffer
- Java.lang - StringBuilder
- Java.lang - System
- Java.lang - Thread
- Java.lang - ThreadGroup
- Java.lang - ThreadLocal
- Java.lang - Throwable
- Java.lang - Void
- Java.lang Package extras
- Java.lang - Interfaces
- Java.lang - Errors
- Java.lang - Exceptions
- Java.lang Package Useful Resources
- Java.lang - Useful Resources
- Java.lang - Discussion
Java - Long highestOneBit() method
Description
The Java Long highestOneBit() method returns an long value with at most a single one-bit, in the position of the highest-order ("leftmost") one-bit in the specified long value. It returns zero if the specified value has no one-bits in its two's complement binary representation, that is, if it is equal to zero.
Declaration
Following is the declaration for java.lang.Long.highestOneBit() method
public static long highestOneBit(long i)
Parameters
i − This is the long value.
Return Value
This method returns an long value with a single one-bit, in the position of the highest-order one-bit in the specified value, or zero if the specified value is itself equal to zero.
Exception
NA
Example 1
The following example shows the usage of Long highestOneBit() method to get an long value with at most a single one-bit in the position of the highest-order. We've created a long variable and assigned it a positive long value. Then using toBinaryString() method, we're printing the binary format of the value. Using bitCount(), we're printing the one bits count and then value of highest one bit is printed using highestOneBit() method.
package com.tutorialspoint; public class LongDemo { public static void main(String[] args) { long i = 170L; System.out.println("Number = " + i); /* returns the string representation of the unsigned long value represented by the argument in binary (base 2) */ System.out.println("Binary = " + Long.toBinaryString(i)); // returns the number of one-bits System.out.println("Number of one bits = " + Long.bitCount(i)); /* returns an long value with at most a single one-bit, in the position of the highest-order ("leftmost") one-bit in the specified long value */ System.out.println("Highest one bit = " + Long.highestOneBit(i)); } }
Output
Let us compile and run the above program, this will produce the following result −
Number = 170 Binary = 10101010 Number of one bits = 4 Highest one bit = 128
Example 2
The following example shows the usage of Long highestOneBit() method to get an long value with at most a single one-bit in the position of the highest-order. We've created a long variable and assigned it a negative long value. Then using toBinaryString() method, we're printing the binary format of the value. Using bitCount(), we're printing the one bits count and then value of highest one bit is printed using highestOneBit() method.
package com.tutorialspoint; public class LongDemo { public static void main(String[] args) { long i = -170L; System.out.println("Number = " + i); /* returns the string representation of the unsigned long value represented by the argument in binary (base 2) */ System.out.println("Binary = " + Long.toBinaryString(i)); // returns the number of one-bits System.out.println("Number of one bits = " + Long.bitCount(i)); /* returns an long value with at most a single one-bit, in the position of the highest-order ("leftmost") one-bit in the specified long value */ System.out.println("Highest one bit = " + Long.highestOneBit(i)); } }
Output
Let us compile and run the above program, this will produce the following result −
Number = -170 Binary = 1111111111111111111111111111111111111111111111111111111101010110 Number of one bits = 60 Highest one bit = -9223372036854775808
Example 3
The following example shows the usage of Long highestOneBit() method to get an long value with at most a single one-bit in the position of the highest-order. We've created a long variable and assigned it a positive long value. Then using toBinaryString() method, we're printing the binary format of the value. Using bitCount(), we're printing the one bits count and then value of highest one bit is printed using highestOneBit() method.
package com.tutorialspoint; public class LongDemo { public static void main(String[] args) { long i = 0L; System.out.println("Number = " + i); /* returns the string representation of the unsigned long value represented by the argument in binary (base 2) */ System.out.println("Binary = " + Long.toBinaryString(i)); // returns the number of one-bits System.out.println("Number of one bits = " + Long.bitCount(i)); /* returns an long value with at most a single one-bit, in the position of the highest-order ("leftmost") one-bit in the specified long value */ System.out.println("Highest one bit = " + Long.highestOneBit(i)); } }
Output
Let us compile and run the above program, this will produce the following result −
Number = 0 Binary = 0 Number of one bits = 0 Highest one bit = 0