黑马程序员技术交流社区

标题: 基础题求解答 [打印本页]

作者: New_PS    时间: 2015-4-3 17:11
标题: 基础题求解答
若x=2,则表达式(x++)/3的值是________.
为什么是0呢?加了()不是优先运算吗?

作者: 蜗牛opa    时间: 2015-4-3 17:17
因为x++是先运算在自增
作者: 飞翔的侠客604    时间: 2015-4-3 17:33
(x++)/3
可以这么理解    2/3=0
                      x++ = 3
x++是在运算后自身+1
如果是++x的话就是先加了 结果就等1
作者: ws748264    时间: 2015-4-3 18:12
后自增啊
作者: jiandonn    时间: 2015-4-3 18:41

(x++)/3
可以这么理解    2/3=0
                      x++ = 3
x++是在运算后自身+1
如果是++x的话就是先加了 结果就等1
作者: 火七君    时间: 2015-4-3 19:46
涨知识了
作者: New_PS    时间: 2015-4-3 20:49
飞翔的侠客604 发表于 2015-4-3 17:33
(x++)/3
可以这么理解    2/3=0
                      x++ = 3

明白了 谢谢:)
作者: 风飘逸    时间: 2015-4-3 21:03
++在后,先运算再自增
作者: 屠赞华    时间: 2015-4-3 21:06
x++ 是赋值后自增1.  你就记住见到x++ 的时候 下一次x变成x+1本次不变就行
作者: Kewin.java    时间: 2015-4-3 21:16
++在变量后面表示变量先参与运算再自增。
作者: 缤纷落叶    时间: 2015-4-3 21:18
2/3取int型整数当然=0了,你++x/3就=1,你试试就知道了
作者: poppy    时间: 2015-4-3 21:24
前面小于后面都是0
作者: 倒骑驴走着瞧    时间: 2015-4-3 21:31
先后的问题,在后面的话先进行操作在自加
作者: 乐生    时间: 2015-4-3 21:55
x++是运算完X才加1
作者: One_M    时间: 2015-4-3 22:05
先计算再...自增~!!
作者: showdy    时间: 2015-4-3 22:14
你要知道X++表达式的值还是2,只是x变成3了,2/3=0没错
作者: luoyu1530    时间: 2015-4-3 22:15
++ 在后,先做完运算式,再自加
作者: silencelj    时间: 2015-4-3 22:27
++在后,是后自加的!
作者: 邓士林    时间: 2015-4-3 22:34
有意思啊。。
作者: cody    时间: 2015-4-3 22:43
加了()不是优先运算吗?

QQ图片20150403224224.png (51.83 KB, 下载次数: 46)

QQ图片20150403224224.png

作者: cody    时间: 2015-4-3 22:44
飞翔的侠客604 发表于 2015-4-3 17:33
(x++)/3
可以这么理解    2/3=0
                      x++ = 3

加了()不是优先运算吗?
作者: 飞翔的侠客604    时间: 2015-4-3 22:57
cody 发表于 2015-4-3 22:44
加了()不是优先运算吗?

ublic class Pome {
        public static void main(String[] args) {
                int x = 2;
                int y;
                y=(x++)/3;
                System.out.println(y);
        }
}
Console
0

作者: 天空的彩虹    时间: 2015-4-4 19:40
(x++)/3
可以这么理解    2/3=0
                       x++ = 3
x++是在运算后自身+1
如果是++x的话就是先加了 结果就等1
作者: Efforts    时间: 2015-4-4 19:48
长知识啦
作者: Searching    时间: 2015-4-4 21:55
x++你可以认为是下次用到x的时候再加1,而++x可以认为本次x要先自增。
作者: 涿郡丶二哥    时间: 2015-4-4 22:23
长知识了!
作者: wenhb    时间: 2015-4-4 22:49
先用x了 ,x才自加的、
作者: 快乐ABC    时间: 2015-4-4 23:56
加了括号是优先运算,先运算括号中表达式的值是2,先出3在自增,所以是0
作者: 黑马TYR    时间: 2015-4-5 00:28
先运算后自增啊
作者: wkz_crystal    时间: 2015-4-5 00:32
这样看待吧,这里相当于y=x++,请问y是不是等于2,y/3有答案了吧,是0吧!
作者: dgrlucky    时间: 2015-4-5 00:57
因为x++先运算在加1,故(x++)/3=2/3=0;
作者: qq250144825    时间: 2015-4-5 01:04
x++是先运算再自加1的,优先级是没用关系的
作者: 丿天邪    时间: 2015-4-5 01:46
学习到了。。。
作者: cody    时间: 2015-4-5 19:31
qq250144825 发表于 2015-4-5 01:04
x++是先运算再自加1的,优先级是没用关系的

明白,谢谢




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2