Integer lowestOneBit() Method in Java
The Integer.lowestOneBit() method of java.lang is an inbuilt function that returns an int value with at most a single one-bit, in the position of the lowest-order (ie.rightmost) one-bit in the specified int value. This method will return zero if the specified value has no one-bits in its two’s complement binary representation, ie. if the binary representation of the number is equal to zero.
public static int lowestOneBit(int a)
Parameters: The method takes one parameter a of integer type that refers to the value whose lowest order bit is to be returned or on which the operation is to be performed.
Returns : The method can return two types of values:
- Returns an integer value with a single 1-bit, in the position of the lowest-order one-bit in the specified value
- Returns zero if the specified value is equal to zero.
Input: 157 Output: Lowest one bit = 1 Input: 0 Output: Lowest one bit = 0 Explanation: Consider any integer a = 10 Binary Representation = 0000 1010 Lowest bit(at 1) i.e.0000 0010 so result = 2^1=2
Below programs illustrate the java.lang.Integer.lowestOneBit() method:
Program 1: For a positive number.
Given Number = 157 Lowest one bit = 1 Given Number = 64 Lowest one bit = 64 Given Number = 0 Lowest one bit = 0
Program 2: For a negative number.
Given Number = -157 Lowest one bit = 1 Given Number = -17 Lowest one bit = 1
Program 3: For a decimal value and String.
Note:It returns a compile time error message when a decimal value and a string is passed as an argument.
prog.java:10: error: incompatible types: possible lossy conversion from double to int int a = 71.57; ^ prog.java:17: error: incompatible types: String cannot be converted to int a = "12"; ^ 2 errors