在java.自定义方法中使用for循环[重复]

5n0oy7gb  于 2023-03-11  发布在  Java
关注(0)|答案(1)|浏览(119)

此问题在此处已有答案

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;

    }

}

enter image description here

k0pti3hp

k0pti3hp1#

它不会“复制”你最后的输出,你可能像System.out.println(finra());那样调用它,它执行你的函数,然后打印出return的值。你的算法目前不会将下一个“FIN”或“RA”添加到结果中,它会覆盖结果,使其等于最后一个值,并打印它。您需要将result = "FIN";result = "RA";更改为+=,以便将这些值相加,并且如果您希望它只返回结果,则可以仅通过finra();调用它或删除System.out.print

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 + "";
        }
        result +=" ";
    }
    return result;
}

相关问题