java程序中index++和++index的区别
我想要一个人的理解,最好有具体的例子。我比较笨,理解比较慢的!为什么答案不一样呢>intsample=5;System.out.println(sample++);Sys...
我想要一个人的理解,最好有具体的例子。我比较笨,理解比较慢的!
为什么答案不一样呢
> int sample = 5;
System.out.println(sample++);
System.out.println(sample);
5
6
> int sample = 5;
System.out.println(++sample);
System.out.println(sample);
6
6 展开
为什么答案不一样呢
> int sample = 5;
System.out.println(sample++);
System.out.println(sample);
5
6
> int sample = 5;
System.out.println(++sample);
System.out.println(sample);
6
6 展开
8个回答
展开全部
1、int n=(index++)+9;等价于:int n=index+9;index=index+1;
2、int n=(++index)+9;等价于:index = index+1;int n=index+9;
这样如果index的初始值是1那么第一个n的值就是10,第二个n的值就是11,当这句执行之后index再出现的时候,两种情况index的值都是2,
这样写你明白了么?
****************************************
按照我上面的说法
> int sample = 5;
System.out.println(sample++);
System.out.println(sample);
等价于:
> int sample = 5;
System.out.println(sample);
sample=sample+1;
System.out.println(sample);
所以结果是:
5
6
> int sample = 5;
System.out.println(++sample);
System.out.println(sample);
等价于:
sample=sample+1;
System.out.println(sample);
System.out.println(sample);
所以结果是:
6
6
看出区别了么?
++在后边就是在它后边执行sample=sample+1; ++在前边就是在它前边执行sample=sample+1;
2、int n=(++index)+9;等价于:index = index+1;int n=index+9;
这样如果index的初始值是1那么第一个n的值就是10,第二个n的值就是11,当这句执行之后index再出现的时候,两种情况index的值都是2,
这样写你明白了么?
****************************************
按照我上面的说法
> int sample = 5;
System.out.println(sample++);
System.out.println(sample);
等价于:
> int sample = 5;
System.out.println(sample);
sample=sample+1;
System.out.println(sample);
所以结果是:
5
6
> int sample = 5;
System.out.println(++sample);
System.out.println(sample);
等价于:
sample=sample+1;
System.out.println(sample);
System.out.println(sample);
所以结果是:
6
6
看出区别了么?
++在后边就是在它后边执行sample=sample+1; ++在前边就是在它前边执行sample=sample+1;
展开全部
假如 index=1,
a=index++;
那么 a=1,index=2;index++是先赋值给a,然后再加1;
假如index=1,
a=++index;
那么 a=2,index=2;++index是index先加1变为2再赋值给a;
a=index++;
那么 a=1,index=2;index++是先赋值给a,然后再加1;
假如index=1,
a=++index;
那么 a=2,index=2;++index是index先加1变为2再赋值给a;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
index++ 是先给index赋值再加一
++index 是index先加一再赋值!
你补充的也是对的啊!
int sample = 5;
System.out.println(sample++);先给sample赋值再加一
System.out.println(sample);sample=6
5
6
> int sample = 5;
System.out.println(++sample);先给sample加1 sample=6
System.out.println(sample); sample=6
6
6
++index 是index先加一再赋值!
你补充的也是对的啊!
int sample = 5;
System.out.println(sample++);先给sample赋值再加一
System.out.println(sample);sample=6
5
6
> int sample = 5;
System.out.println(++sample);先给sample加1 sample=6
System.out.println(sample); sample=6
6
6
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
index++的意思就是先执行语句,然后再执行index=index+1
++index的意思就是先执行index=index+1,再执行语句。
比如index=3;
a=2+index++;
System.out.println(index);
a=2+3=5,然后index=idnex+1=4,最后输出index就是4.明白了么?
++index的意思就是先执行index=index+1,再执行语句。
比如index=3;
a=2+index++;
System.out.println(index);
a=2+3=5,然后index=idnex+1=4,最后输出index就是4.明白了么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
前++ (++index形式) 和 后++ (index++形式),当他们独立用的时候是没有区别的,什么叫独立用,就是本身就是一行语句:
index++;
如果和其他表达式联合起来用就用区别了,请记住:++index是index自加1之后再和其他东西进行运算,index++则相反,看例子:
int n = 1;
int index = 1;
n = ++index + n;//n = 3,index = 2,index先自身加1再和n进行计算
n = index++ + n;//n = 2,index = 2,index先和n进行计算本身再加1
但是独立使用的话就没区别了
int n = 1;
int index = 1;
index++;或++index;
n = n + index;//n = 3,index = 2;
index++;
如果和其他表达式联合起来用就用区别了,请记住:++index是index自加1之后再和其他东西进行运算,index++则相反,看例子:
int n = 1;
int index = 1;
n = ++index + n;//n = 3,index = 2,index先自身加1再和n进行计算
n = index++ + n;//n = 2,index = 2,index先和n进行计算本身再加1
但是独立使用的话就没区别了
int n = 1;
int index = 1;
index++;或++index;
n = n + index;//n = 3,index = 2;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询