题干
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
关键字:进制转化,补码反码原码
我的思路
在看解析之前,完全没思路,沉住气直接看解析吧。
大佬解析
总结
java遇到这种进制转化,反码补码的问题,要想到<< 移位运算符,要知道正负数移位的结果。
与运算:n与“1”进行与运算,可以得出是不是n中含有1,再对1进行移位,可以知道每个位置是不是含有1.
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
关键字:进制转化,补码反码原码
在看解析之前,完全没思路,沉住气直接看解析吧。
java遇到这种进制转化,反码补码的问题,要想到<< 移位运算符,要知道正负数移位的结果。
与运算:n与“1”进行与运算,可以得出是不是n中含有1,再对1进行移位,可以知道每个位置是不是含有1.