我从文本文件中获取数据并获取每个数字的第一个数字。当我尝试计算它打印的文本文件时:
一:1 二:0 三:0 四:0 五:0 六:0 七:0 八:0 9:0然后,
一:2 二:0 三:0 四:0 五:0 六:0 七:0 八:0 9:0直到获得最终结果:
一个:69 二:40 三:36 四:23 五:24 六:16 七:14 八:14 九:11我正在努力获得最终结果,以便继续前进!/
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);
}
}
答案 0 :(得分:1)
从System.out.println
方法中取出BenfordPercents(String)
。制作名为printResult()
的新方法:
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);
}
在您完成所有BenfordPercents()
来电后,请调用此方法。这样您只能看一次打印。