zoukankan      html  css  js  c++  java
  • 二进制中1的个数

    题目描述

    输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
     1 /*
     2  * 题目描述
     3  * 输入一个整数,输出该数二进制表示中1的个数。
     4  * 其中负数用补码表示。
     5  */
     6 
     7 public class Main11 {
     8     public static void main(String[] args) {
     9         int count = Main11.NumberOf1(453);  /、随便 n
    10         System.out.println(count);
    11     }
    12     
    13     public static int NumberOf1(int n) {
    14         int count = 0;
    15         String str = Integer.toBinaryString(n);  //将十进制 转化成 二进制 详见下面
    16         //System.out.println(str);
    17         char[] ch = str.toCharArray();
    18         for(int i=0;i<str.length();i++) {
    19             if (ch[i] == '1') {
    20                 count++;
    21             }
    22         }
    23         return count;
    24     }
    25 }

     public static String toBinaryString(int i)

      在基数2中返回整数参数的字符串表示形式为无符号整数。 

      如果参数为负,则无符号整数值为参数加2 32 ; 否则就等于论证。 该值转换为二进制(基数2)的ASCII数字字符串,没有额外的前导0 s。 

      可以通过调用Integer.parseUnsignedInt(s, 2)从返回的字符串s中恢复参数的值。

      如果无符号幅度为零,则由单个零字符'0' ( 'u0030' )表示; 否则,无符号大小的表示的第一个字符将不是零字符。 字符'0' ( 'u0030' )和'1' ( 'u0031' )用作二进制数字。

      

     

      参数
        i - 要转换为字符串的整数。
      结果
        由二进制(基数2)中的参数表示的无符号整数值的字符串表示形式。
      从以下版本开始:
        JDK1.0.2
    public char[] toCharArray()
      将此字符串转换为新的字符数组。
      结果
        一个新分配的字符数组,其长度是该字符串的长度,其内容被初始化为包含由该字符串表示的字符序列。 
  • 相关阅读:
    关于lockkeyword
    关于多层for循环迭代的效率优化问题
    Android 面试精华题目总结
    Linux基础回想(1)——Linux系统概述
    linux源代码编译安装OpenCV
    校赛热身 Problem C. Sometimes Naive (状压dp)
    校赛热身 Problem C. Sometimes Naive (状压dp)
    校赛热身 Problem B. Matrix Fast Power
    校赛热身 Problem B. Matrix Fast Power
    集合的划分(递推)
  • 原文地址:https://www.cnblogs.com/strive-19970713/p/11061790.html
Copyright © 2011-2022 走看看