这个怎么计算呀,求解答

public class test {
public static void main(String[] args) {
int sum = 0;
for (int a= 0; a< 10; a++) {
sum += a++;

        System.out.println(a+" "+sum);
    }
}

}
输出如下:

1 0
3 2
5 6
7 12
9 20





package test;  //  包名
import java.util.Random;
    public class test1 {     //项目名
    public static void main(String []avgs)
    {
        int sum=-1,sum2=0;
        for(int i=0;i<5;i++)
        {
            sum=sum+2;
            sum2=sum2+2*i;
            System.out.println(sum+" "+sum2);
        }
    }
}
 

img

sum+=a++;
等价于
sum+=a;
a++;
那么其实循环可以重新写为
for(a=0;a<10;a+=2)
{
sum+=a;
System.out.println((a+1)+" "+sum);
}
可以看出,a的取值是个等差数列
而sum则是不同长度的等差数列求和