Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,939 questions

51,876 answers

573 users

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

1 Answer

0 votes
public class NearestPowerOfTwo {

    /**
     * Rounds a positive integer to the nearest power of 2.
     *
     * return the nearest power of 2
     */
    public static int roundToNearestPowerOf2(int n) {
        if (n <= 0) return 0;

        int prevPower = Integer.highestOneBit(n);
        int nextPower = prevPower << 1;

        return (n - prevPower < nextPower - n) ? prevPower : nextPower;
    }

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



/*
run:

Nearest power of 2: 32

*/

 



answered Oct 31, 2025 by avibootz

Related questions

2 answers 57 views
1 answer 44 views
2 answers 117 views
1 answer 58 views
1 answer 66 views
1 answer 52 views
...