for循环中的Java倍数

AAn*_*007 -5 java for-loop

我编写了以下代码来获取从0到1000的所有数字,它们是三的倍数:

public class Hi {
  public static void main(String[] args) {
    for(int i = 0; i<1000; i++)
        if(i % 3 == 0)
          System.out.println(i);
  }
}
Run Code Online (Sandbox Code Playgroud)

现在我想将这些数字加在一起并在循环后打印结果.

Ell*_*sch 5

如果迭代3的倍数,则无需测试3的多重性.最后,要添加数字,您应该执行算术运算.就像是,

long sum = 0;
for (int i = 3; i < 1000; i += 3) {
    sum += i;
}
System.out.println(sum);
Run Code Online (Sandbox Code Playgroud)

或者,在Java 8+中,使用IntStream(对于相同的结果)

System.out.println(IntStream.rangeClosed(1, 1000 / 3).map(i -> i * 3).sum());
Run Code Online (Sandbox Code Playgroud)