[英]Counting the binary in a number java?
我是java的新手,我想知道是否有任何方法可以計算單個int的二進制中實際的1和0的數量。 例如,我會嘗試找出int 6的二進制32位二進制中的1和0的數量?
int ones = Integer.bitCount(n);
int zeros = Integer.bitCount(~n) - Integer.numberOfLeadingZeros(n);
幸運的是,java有一個內置方法:Integer.toBinaryString()它接受一個整數值,將其轉換為二進制,然后將其作為String返回。
或者你可以了解你的java技能並創建自己的方法來完成它。
由於你沒有提供任何代碼,我會給你一些關於如何做到這一點的公會。
Integer.toBinaryString(x);
獲取int
的二進制表示法Integer.toBinaryString(x);
6
的情況下,它將返回110
。 但是您需要32位表示6,因此您必須在該方法返回的結果前添加額外的零。 String
的字符,當char == 0
增加零計數器時。 當char == 1
遞增計數器時。 希望這可以幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.