猿问

关于赋值的一个问题,为啥出来的结果一直是i=0

int i=o;

for(int j=0;j<10;j++){

i=i++;

}

System.out.println(i);

Wenson_L
浏览 1509回答 4
4回答

Realank刘

这个问题很简单,你要搞清楚i++和++i的关系,i=i++这句话,相当于:i=i和i=i+1同时进行,因为翻译成汇编语言是多条的关系,最后i的值没有改变。这句话应该写成i+=1,或者只写一句i++就可以了,i=i++这句话是病句,多此一举

和你一起闪耀到世界尽头

int i=o;for(int j=0;j<10){j++;i=i++;}System.out.println(i);这样吗,我是新手

qq_沐曦_2

我们读一下你的程序1定义一个变量i=02进行for循环,定义变量J=0 如果小于10 就执行将i赋值与i的操作,3执行完毕,执行J++4 j =1 继续运行 i=i;同学你的I++是执行不到的,因为for当前循环一结束,就直接进行j++
随时随地看视频慕课网APP
我要回答