社区
Java SE
帖子详情
好奇怪的问题
bsdos123
2008-02-18 03:09:12
[cord]
int i=1;
i=i++;
print(i);
[/cord]
打印出来的为什么是1而不是2?
...全文
68
7
打赏
收藏
好奇怪的问题
[cord] int i=1; i=i++; print(i); [/cord] 打印出来的为什么是1而不是2?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wuxo84
2008-02-18
打赏
举报
回复
赋值的时候其实就是:
之前先把i的值给了一个临时变量,最后再把这个临时变量的值交给要赋值的那个变量。
wuxo84
2008-02-18
打赏
举报
回复
楼主,俺的回答满意不?还有什么疑问大家一起探讨~
zhaining522
2008-02-18
打赏
举报
回复
那么j =i++ 相当于 j = i ; i+1; 喽?
是这样的 怎么看出来显然是不对的呢?
bsdos123
2008-02-18
打赏
举报
回复
以下是楼上说的话
其实也就是说 i = i++ 相当于 i = i ; i+1;
问
如果i = i++ 相当于 i = i ; i+1;
那么j = i++ 相当于 j = i ; i+1; 喽?
显然是不对的
i++和++i等我都知道,我不是初学者,我就是想不通i++有时是不是违背了先赋值后自增的说法了
枫叶rain
2008-02-18
打赏
举报
回复
j=i++;是先赋值,再增加1
j=++i;是先增加1,再赋值
zhaining522
2008-02-18
打赏
举报
回复
很简单
把这个代码给你拆开看你就明白了
int i =1;
i = i ;
i+1; 加1后没有赋给任何变量 所以i的值不变
print(i);
因为i的值没有变 所以输出的还是1
其实也就是说 i = i++ 相当于 i = i ; i+1;
wuxo84
2008-02-18
打赏
举报
回复
i++是这样的,一上来i=1;
在做i=i++之前,i先把它的值赋给一个临时变量比如说叫x,此时i=〉x;
然后i++,这时候i=2了;
但怎么体现“先操作后自增”呢?奥秘就在这:最后再把x赋给i,x=〉i,所以这个时候i又等于1了。
咱们防止混淆,可以这样
int i = 1;
a = i++;
print(a);
一上来i=1;
在做a=i++之前,i先把它的值赋给一个临时变量x,此时i=〉x,x=1了;
然后i++,这时候i=2了;
最后再把x赋给a,x=〉a,所以这时a=1。
所以表面上看上去是先做了赋值操作 之后再作自增操作!
以上仅供参考
MYSQL的
奇怪
问题
:varchar与数值比较
我在工作中很少遇到所谓的‘
奇怪
的
问题
’。所以对于‘
奇怪
的
问题
’我还是很期盼的,可能很早的时候就被某些XX开发规范给限制住了,也就很少遇到这些所谓的
奇怪
的
问题
。所以严格来说 XXX开发规范 还是很靠谱的。 事件起源 好了来说具体场景,被同事叫去看一个
奇怪
的SQL。SQL语句很简单,大概就是查询某些字段有一些查询条件而已。 其中比较重要的一个条件就是 「where xx!=0」。说是很
奇怪
,为什么!=0就查询到的结果就是10条。但是!=1 查询出来的结果就是100条。 SELECTA,B,CFROM..
Framework7 框架实战,解决
奇怪
问题
Framework7 框架使用,解决各种
奇怪
问题
简介现在web越来越偏向手机端,手机端html布局越来越重要,最近开发手机端网页项目越来越多,急需要一款好用的手机端框架,这时遇到了Framework7,界面漂亮,APP化,对于常用的部件都有,果断入门,经过一周的苦苦挣扎,终于稳定运行,期间遇到了各种奇葩
问题
,经过苦苦寻找,各种
奇怪
思路,一遍遍的试终于解决,对于这个框架,网上的各种入门教程,基本就是...
ORA-29275部分多字节字符的
奇怪
问题
写存储过程时遇到了这个
奇怪
的
问题
,上网查了半天都说编码不一致什么的,弄了半天也不行,把包头和包体单独分开执行能通过,就是edit包的时候编译不过,一直报这个29275的错,一段一段的删代码发现了
问题
,有两处elsif后边没加条件,直接写了要执行的东西,改成else后就好了。可能是因为代码
问题
不只一处,所以报出了这个错误,记录一下。
Anlogic TD打开界面
奇怪
字体
问题
Anlogic TD打开界面
奇怪
字体
问题
使用安路科技IDE的时候,编辑界面出现
奇怪
字体。 在Editor->Advance里面调整一下字体就好了。
好
奇怪
的游戏(BFS)
【题目描述】 爱与愁大神坐在公交车上无聊,于是玩起了手机。一款
奇怪
的游戏进入了爱与愁大神的眼帘:***(游戏名被打上了马赛克)。这个游戏类似象棋,但是只有黑白马各一匹,在点(x1,y1)(x1,y1)和(x2,y2)(x2,y2)上。它们得从点(x1,y1)(x1,y1)和(x2,y2)(x2,y2)走到(1,1)(1,1)。这个游戏与普通象棋不同的地方是:马可以走“日”,也可以像象走“田”。现在爱与愁大神想知道两匹马到(1,1)(1,1)的最少步数,你能帮他解决这个
问题
么? 【输入格式】 第1行:两
Java SE
62,623
社区成员
307,257
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章