此问题在此处已有答案:
why is price being printed twice?(3个答案)
昨天关门了。
由于某种原因,当我在java中创建自定义方法时,它复制了我上一次的输出。
试着把我的代码直接放在main方法中,它工作得很好。
public static String finra() {
String result = "";
for (int i = 1; i <= 100; i++) {
if (i % 3 == 0 && i % 5 == 0) {
result = "FINRA";
} else if (i % 3 == 0) {
result = "FIN";
} else if (i % 5 == 0) {
result = "RA";
} else {
result = i + "";
}
System.out.print(result + " ");
}
return result;
}
}
1条答案
按热度按时间k0pti3hp1#
它不会“复制”你最后的输出,你可能像
System.out.println(finra());
那样调用它,它执行你的函数,然后打印出return
的值。你的算法目前不会将下一个“FIN”或“RA”添加到结果中,它会覆盖结果,使其等于最后一个值,并打印它。您需要将result = "FIN";
和result = "RA";
更改为+=,以便将这些值相加,并且如果您希望它只返回结果,则可以仅通过finra();
调用它或删除System.out.print