Isn't this one way to test whether a number is a power of 2?
boolean isPowerOfTwo(int n) {
        return (n%2==0);
    }
Isn't this one way to test whether a number is a power of 2?
boolean isPowerOfTwo(int n) {
        return (n%2==0);
    }
Are you sure that you are checking power of 2? Rather, being checked divisible with 2. If you are serious, use the piece of cake snippet
return n > 0 && ((n & -n) == n);
The second way,
private static boolean powerOf2(int num)
{
  if(num <= 0){
   return false;
  }
  while(num > 1)
  {
   if(num % 2 != 0)
   {
    return false;
   }
   num = num / 2;
  }
  return true;
}
That function checks whether or not an integer is even (i.e divisible by 2), not whether or not the integer is a power of 2.
To check if a number is a power of 2, you should look at its bits. ints that are a power of 2 will have one bit set to 1 and all others set to 0.
boolean isPowerOf2(int i) {
    return Integer.bitCount(i) == 1;
}
The % is the modulo operator, meaning the remainder after division. your method checks if the int n is divisible by 2