How to round a number to the next power of 2 in Java

1 Answer

0 votes
public class PowerOfTwo {

    /**
     * Rounds an integer up to the next power of 2.
     *
     * return the next power of 2 greater than or equal to n
     */
    public static int roundToNextPowerOf2(int n) {
        if (n <= 0) return 1;
        
        return (int) Math.pow(2, Math.ceil(Math.log(n) / Math.log(2)));
    }

    public static void main(String[] args) {
        int num = 33;
        
        System.out.println("Next power of 2: " + roundToNextPowerOf2(num));
    }
}



/*
run:

Next power of 2: 64

*/

 



answered Oct 29, 2025 by avibootz

Related questions

1 answer 53 views
2 answers 81 views
2 answers 149 views
1 answer 71 views
1 answer 71 views
1 answer 63 views
1 answer 68 views
...