java中i++和++i的区别?

2025-01-01 12:41:16
推荐回答(5个)
回答1:

i++ 和 ++i的基本功能是相同的,都是对变量i进行自增1运算,从功能上讲相当于i =i+1 ;

++运算符分为前缀++和后缀++,如i++中的++就是后缀运算符,++i中的就是前缀运算符,两个的区别在于:

前缀++,先使用变量,再进行变量自增1

后缀++,先进行变量自增1,再使用变量

如:

示例代码1:
int i=0;
while( i++ < 5 ) //先用i的原值与5比较,比较完成后,无论结果是真还是假,都要再进行i=i+1运算
{
    System.out.print( i+ " ");
}
这个循环运行5次,输出 1 2 3 4 5,最后的i值是6
示例代码2:
int i=0;
while( ++i < 5 ) //先进行i=i+1运算,然后用i的新值与5比较,判断结果是真还是假
{
    System.out.print( i+ " ");
}
这个循环运行4次,输出 1 2 3 4,最后的i值是5

回答2:

i++表示先引用i变量的数值然后再对i进行加1的操作,
而++i是先对i变量进行加1的操作,然后再引用i变量的数值。

回答3:

[后缀++,先进行变量自增1,再使用变量]
[while( i++ < 5 ) //先用i的原值与5比较,比较完成后,无论结果是真还是假,都要再进行i=i+1运算]
这两句话不是矛盾吗?

回答4:

//i++和++i是有区别的,

//i++是在一个先使用后加1,即先使用i的值,后让i+1

//++i则是先加1后使用,即先让i+1后再使用i的新值

回答5:

++i 是先加1 ,再返回,返回的值 是 i+1 ;
i++ 是 先返回 ,再加1 ,返回的是 i ;