package pkg;
public class p43 {
public static void main(String[] args) {
int i=1;
System.out.println("i="+i);
i++;
System.out.println("after i++, i="+i);
i=1;
++i;
System.out.println("let i=1,after ++i,then i="+i);
System.out.println("Above means: ++i OR i++,all can let i=i+1 after this instruction");
i=1;
int j=5,sum=0;
sum=j+(++i);
System.out.println("sum="+sum);//5+2
System.out.println("i="+i);//i=2
i=1;
sum=0;
sum=j+(i++);
System.out.println("sum="+sum);//5+1
System.out.println("i="+i);//i=2
System.out.println("Above means: i++/i++ means access i but with different time to modify i's value");
}
}
output:
i=1
after i++, i=2
let i=1,after ++i,then i=2
Above means: ++i OR i++,all can let i=i+1 after this instruction
sum=7
i=2
sum=6
i=2
Above means: i++/i++ means access i but with different time to modify i's value
i++:先访问存储变量i的内存并取值,返回取值并参与语句运算,然后让内存的值增加1;
++i:先让存储变量i的内存的值增加1,再访问内存并取值,返回取值结果参与语句运算。