题解 | #求int型正整数在内存中存储时1的个数#
求int型正整数在内存中存储时1的个数
http://www.nowcoder.com/practice/440f16e490a0404786865e99c6ad91c9
采用消除低位1的方法,位运算 x & (x- 1) 消除低位的1
package 牛客网.华为机试; import java.util.Scanner; public class IntOneCount { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int num = sc.nextInt(); if (num == 0) System.out.println(0); else { int res = 0; while(num != 0){ num = num & num - 1; res ++; } System.out.println(res); } } }