java中++ i和i++有什么区别?

如题所述

++i是使用i之前先使i加一。i++是使用i之后再加一。如果不能理解,那么可以理解为:++i是先计算,再操作,i++是先操作,再计算。

JAVA里的自增运算符。

其中:++i和i++是谁在前先取谁,但加一优先运算并赋给原值,取的值再参与其他运算。

++在后,则是先用原来的值参与运算,遇到一个特殊序列点(&&或||或,或?:或;)才使变量自加。若b=3,a=b++,则a=3,b=4。若a=++b,则a=4,b=4。

扩展资料:

i++和++i的区别主要在于自增的顺序,i++代表着i参与运算之后,i的值会自增1,通俗来讲也就是“先加1后赋值”,而++i则表示i自增1之后再参与其他运算,通俗说的“先赋值再加1”。

需要注意的是,若是在for循环里是有不同的,如果要表示递增,理论上两种都可以,不过一般情况下,循环变量增值用i++,而不用++i是因为在循环结构里需要循环变量来结束循环,而使用i++则会导致本来应该继续的循环少执行一次。

所以循环结构里通常都是循环变量在一次循环结构执行完成之后再自增。

参考资料来源:百度百科-++

温馨提示:内容为网友见解,仅供参考
无其他回答

java++ i和i++有什么区别?
1、理论上的区别:i++表示先引用i变量的数值然后再对i进行加1的操作,而++i是先对i变量进行加1的操作,然后再引用i变量的数值。2、表达式的形式不同:一个将++放在变量的前面,一个将++放在变量的后面。3、运算的优先级不同:i++中的“++”运算符的优先级比++i中“++”运算符的优先级高。例...

java++ i和++ i区别在哪?
1、赋值顺序不同 ++ i 是先加后赋值;i ++ 是先赋值后加;++i和i++都是分两步完成的。因为++i 是后面一步才赋值的,所以它能够当作一个变量进行级联赋值,++i = a =b,即 ++i 是一个左值;i++ 的后面一步是自增,不是左值。2、效率不同 比如i=3,b=i++就是说b=3,完成之后让...

i++和++i的区别是什么?
一、操作方式不同 i++称为后置递增,意味着先返回当前值再加一。而++i称为前置递增,是先进行加值操作,然后再返回值。二、结果侧重不同 在表达式中,i++侧重于表达式的值。例如,在一个复杂的计算或公式中,使用i++可以确保使用的是变量i的当前值。而++i则侧重于变量的更新。当需要改变变量的值...

i++和++i区别
1、执行顺序不同 i++是后置自增运算符,意味着它会在表达式求值后再将值加1。而++i是前置自增运算符,会在表达式求值前先将值加1。2、表达式的值不同 由于两者的执行顺序不同,它们在表达式中的值也可能不同。如果i的初始值为1,那么i++将返回1,并将i的值增加到2。而++i将返回2,并将i...

java中i++和++ i有什么区别呢?
主要有以下三个区别:1、++i是先改变i的值即加1后再使用i的值;而i++是先使用i的值在改变它的值即加。2、for循环内部仅形式不同:当i++循环和++i循环在for循环内部,虽然形式上明显不同,但输出结果可以一样。如下图所示:for(i++)循环:输出结果:for(++i)循环:输出结果:3、print(...

i++和++i的区别
++i和i++都是分两步完成的。因为++i 是后面一步才赋值的,所以它能够当作一个变量进行级联赋值,++i =;a =b,即++i是一个左值(可被寻址的值);i++ 的后面一步是自增,不是左值。++i和i++的使用,一般来说在循环域里面,这两者并没有什么很大的区别,因为编译器一般都会做优化。但是要...

i++与++i有什么区别
详情如下:1、++i是指先把变量i的值加1,然后再把结果值赋值给左边变量;2、i++是先把变量i的值赋值给左边变量,然后再把变量i的值加1;3、++i和i++都是分两步完成的。4、n=++i,操进后,n的值发生了改变,其值变成了i+1。5、n=i++,操作后,n的值不发生改变,其值仍然为i。”

java中i++和++i的区别?
i++ 和 ++i的基本功能是相同的,都是对变量i进行自增1运算,从功能上讲相当于i =i+1 ;++运算符分为前缀++和后缀++,如i++中的++就是后缀运算符,++i中的就是前缀运算符,两个的区别在于:前缀++,先使用变量,再进行变量自增1 后缀++,先进行变量自增1,再使用变量 如:示例代码1:int ...

java 中 i++和++i有什么区别
i++和++i都是对i进行+1的操作,不同的是i++是在i值被使用后才+1而++i是i值在被使用之前就+1;拿你的例子进行说明 先分析count=(i++)+(i++)+(i++);运算是从左向右的,由于i++是在i值被使用后才+1所以第一个括号的(i++)应该为3,但是i的值变成了4,当运算第二个括号(i++...

java中++ i和i++有什么区别?
++i是使用i之前先使i加一。i++是使用i之后再加一。如果不能理解,那么可以理解为:++i是先计算,再操作,i++是先操作,再计算。JAVA里的自增运算符。其中:++i和i++是谁在前先取谁,但加一优先运算并赋给原值,取的值再参与其他运算。++在后,则是先用原来的值参与运算,遇到一个特殊序列点...

相似回答
大家正在搜