黑马程序员技术交流社区
标题:
关于自增和自减
[打印本页]
作者:
白白胖胖
时间:
2014-4-5 12:25
标题:
关于自增和自减
看视频,自增和自减,要是简单运算还能明白。
但是还是对优先级有点迷糊,就是自增自减和加减乘除这些相比,优先级是怎样的
作者:
Darkhorse′Xa
时间:
2014-4-5 17:09
本帖最后由 Darkhorse′Xa 于 2014-4-5 18:26 编辑
1.png
(8.63 KB, 下载次数: 10)
下载附件
2014-4-5 17:08 上传
网上的运算符优先级的表也很多,可以去查一下资料,
自增自减有前缀和后缀,优先级是不一样的,自增自减前缀优先级是大于+-*/优先级的,后缀自增自减小于+-*/优先级
<p>
int number = 20;
int i = 5 * ++number;/*首先这边有三个运算符,前缀自增,*,=,优先级是先进行自增那么number的值就为21,
在进行*运算符的计算,最后在赋值给i */
Console.WriteLine(i);//输出就为105
int number = 20;</p><p> </p><p> </p><p> </p><p>
int i = 5 * number++;/*首先这边有三个运算符,前缀自增,*,=,优先级是先进行*运算,那么计算完为100
再进行赋值运算将100赋值给i,最后在进行自增运算(后缀)*/
Console.WriteLine(i);//输出就为100
Console.WriteLine(number);//number自增后为21</p>
复制代码
作者:
李云锋
时间:
2014-4-5 18:10
本帖最后由 李云锋 于 2014-4-5 18:12 编辑
不难吧,很久没特意弄这些了,也不知道有没有记错
加入a=1 b=2
a++ 无论加减乘除,都是先加后运算 比如 b+a++ 然后输出运算结果和a,这个时候a++先变成2,然后和是2+2=4
++a的话,是先运算后加,同上b+++a,然后同输出运算结果和a的值,这个时候运算之前++a代表的还是1,运算完后才是2,所以结果是1+2=3,而输出的a的值是2加减乘除都一样,还有新手的话不比纠结于其他运算的优先级,能把常用的了解就行了
作者:
@雪飞鸿
时间:
2014-4-6 18:24
自增和自减单独使用时没有区别;
在参与运算时,a++ a使用递增之前的值进行运算,运算结束后a的值增加1;
++a a的值先递增1然后使用递增之后的值参与运算;
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2