Java 如何从循环中打印不必要的代码?

Java 如何从循环中打印不必要的代码?,java,loops,Java,Loops,我从一个文本文件中获取数据,并获取每个数字的第一位数字。当我尝试计数它打印的文本文件时: 1:1 二比零 3:0 4:0 五点零分 六点零分 七点零分 八点零分 九点零分 那么 一:二 二比零 3:0 4:0 五点零分 六点零分 七点零分 八点零分 九点零分 在得到最终结果之前: 一:69 2:40 三:36 4:23 五点二十四分 六点十六分 七点十四分 八点十四分 九点十一分 我正在努力取得最后的结果,这样我就可以继续前进/ public static void BenfordPer

我从一个文本文件中获取数据,并获取每个数字的第一位数字。当我尝试计数它打印的文本文件时:

1:1 二比零 3:0 4:0 五点零分 六点零分 七点零分 八点零分 九点零分

那么

一:二 二比零 3:0 4:0 五点零分 六点零分 七点零分 八点零分 九点零分

在得到最终结果之前:

一:69 2:40 三:36 4:23 五点二十四分 六点十六分 七点十四分 八点十四分 九点十一分

我正在努力取得最后的结果,这样我就可以继续前进/

    public static void BenfordPercents(String strLine){


        //System.out.println(strLine);


        Matcher matcher = Pattern.compile("\\d+").matcher(strLine);
        matcher.find();
        Integer o = Integer.valueOf(matcher.group());
        //System.out.println(o);

//      while (Math.abs(o) >= 10){
//          o = o / 10;
//      }

        int firstDigit = o;
        while (firstDigit > 9){
            firstDigit = firstDigit / 10;

        }
        //System.out.println(firstDigit);



        //return Math.abs(o);
        //System.out.println(o);

        if (firstDigit == 1){
            one++;
        }else if(firstDigit == 2){
            two++;
        }else if(firstDigit == 3){
            three++;
        }else if(firstDigit == 4){
            four++;
        }else if(firstDigit == 5){
            five++;
        }else if(firstDigit == 6){
            six++;
        }else if(firstDigit == 7){
            seven++;

        }else if(firstDigit == 8){
            eight++;

        }else if(firstDigit == 9){
            nine++;

        }



        System.out.println("one: " + one);
        System.out.println("two: " + two);
        System.out.println("three: " + three);
        System.out.println("four: " + four);
        System.out.println("five: " + five);
        System.out.println("six: " + six);
        System.out.println("seven: " + seven);
        System.out.println("eight: " + eight);
        System.out.println("nine: " + nine);








    }





}

BenfordPercents(String)
方法中取出
System.out.println
。使新方法名为
printResult()


在完成所有的
BenfordPercents()
调用后调用此方法。这将让你只看到一次打印。

@DarkV1他说
我正试图得到最终结果,这样我就可以继续了/。他可以选择何时打印整个内容,而不是每次调用处理函数时都调用打印。如果调用正确,他只会看到打印一次。你可能应该加上。。。在BenfordPercents调用之后调用print方法。当我读到你的解决方案时,你似乎只是建议在Benford Percent方法中调用该方法。。你说的“打印不必要的代码”是什么意思?“印刷品”?你能说说你对最终结果的期望吗?
public static void printResult(){
    System.out.println("one: " + one);
    System.out.println("two: " + two);
    System.out.println("three: " + three);
    System.out.println("four: " + four);
    System.out.println("five: " + five);
    System.out.println("six: " + six);
    System.out.println("seven: " + seven);
    System.out.println("eight: " + eight);
    System.out.println("nine: " + nine);
}