How to check if all bits of a number are set in Java

2 Answers

0 votes
import java.io.*;  
 
public class MyClass {
    static int is_all_bits_set(int n) { 
        return (n + 1) & n;
    } 
    public static void main(String args[]) {
        int n = 15; 
           
        System.out.println(Integer.toBinaryString(n));
        System.out.println(Integer.toBinaryString(n + 1));
        System.out.println(Integer.toBinaryString((n + 1) & n));
        if (is_all_bits_set(n) == 0) {
            System.out.println("Yes");
        }
        else  {
             System.out.println("No");
        }
          
        n = 13;
      
        System.out.println(Integer.toBinaryString(n));
        System.out.println(Integer.toBinaryString(n + 1));
        System.out.println(Integer.toBinaryString((n + 1) & n));
        if (is_all_bits_set(n) == 0) {
             System.out.println("Yes");
        }
        else  {
             System.out.println("No");
        }
    }
}
 
 
/*
run:
 
1111
10000
0
Yes
1101
1110
1100
No
 
*/

 



answered Mar 7, 2019 by avibootz
0 votes
import java.io.*;  
 
public class MyClass {
    static int is_all_bits_set(int n) { 
         while (n > 0) { 
            if ((n & 1) == 0) 
                return 0; 
            n = n >> 1; 
        } 
        return 1;
    } 
    public static void main(String args[]) {
        int n = 15; 
           
        System.out.println(Integer.toBinaryString(n));
        if (is_all_bits_set(n) == 1) {
            System.out.println("Yes");
        }
        else  {
             System.out.println("No");
        }
          
        n = 13;
      
        System.out.println(Integer.toBinaryString(n));
        if (is_all_bits_set(n) == 1) {
             System.out.println("Yes");
        }
        else  {
             System.out.println("No");
        }
    }
}
 
 
/*
run:
 
1111
Yes
1101
No

*/

 



answered Mar 7, 2019 by avibootz

Related questions

1 answer 125 views
1 answer 125 views
1 answer 213 views
2 answers 216 views
2 answers 223 views
2 answers 188 views
2 answers 182 views
...