枚举系列 数字统计 java版

今天看了一个数字统计的代码,觉得本人也能尝试的写一写(毕竟本人是个小菜鸟)
题目是这样的输入一个数字,从1开始数到n,统计这期间一共有多少个0,多少个1……

于是思考:
将1到n的数字存入到数组中
再将数组中的数字转换成字符串的形式
将字符串转换成char类型的字符组
使用计算器进行计算
大功告成!!!

代码如下:

import java.util.Scanner;
class Main {
    public static void main(String [] args){
        Scanner sc = new Scanner(System.in);
        while(sc.hasNext()){
            int n = sc.nextInt();
            //创建一个数组来存入输入的数字
            int [] a = new int [n+1];
            for(int i=1; i<=n; i++){
                a[i] = i;
            }
            //定义一个字符串类型来存由数字转换成的字符串
            String str2 = "";
            for(int j=1; jstr = String.valueOf(a[j]);
                str2 += str;
            }
            char [] chs = str2.toCharArray();
            //计算器
            for(char ch = '0';ch < '9';ch++){
                int count = 0;
                for(int i=0; iif(ch == chs[i]){
                        count++;
                    }
                }
                if(count != 0){
                    System.out.println(count);
                }
            }
        }
    }
}

运行结果如下:

枚举系列 数字统计 java版_第1张图片

你可能感兴趣的:(算法)