判斷一個(gè)數(shù)是否是2的n次冪
Posted on 2012-06-16 22:26 steven.cui 閱讀(648) 評(píng)論(0) 編輯 收藏 所屬分類(lèi): java判斷一個(gè)數(shù)是否是2的n次冪
類(lèi)似這樣的數(shù)字
1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024 …
if ((n & -n) == n)
…
1 public class Is2Power {
2 public static void main(String[] args) {
3 for (int i = 0;i <= 1024; i++) {
4 if ((i & -i) == i)
5 System.out.println(Integer.toBinaryString(i) + ", " + Integer.toBinaryString(-i) + " " + i);
6 }
7 }
8 }
2 public static void main(String[] args) {
3 for (int i = 0;i <= 1024; i++) {
4 if ((i & -i) == i)
5 System.out.println(Integer.toBinaryString(i) + ", " + Integer.toBinaryString(-i) + " " + i);
6 }
7 }
8 }