黑马程序员技术交流社区

标题: 不明白是什么运算符 [打印本页]

作者: 忧伤    时间: 2013-6-2 10:14
标题: 不明白是什么运算符
false ^ false
两个false中那个符号是干嘛用的 一般在什么情况下用
作者: 赵乐    时间: 2013-6-2 10:25
^符号是位逻辑运算符里的按位异或,只有在两个比较的位不同时结果是1,否则为0.
比如:
十进制 9    二进制:1 0 0 1
十进制 2    二进制:0 0 1 0
         9^2  结果:  1 0 1 1  转换为十进制:8+2+1=11

作者: 忧伤    时间: 2013-6-2 10:31
还是不太明白再说通俗一点谢谢了
作者: 风爽    时间: 2013-6-2 10:55
^按位异或。当运算符两边的值不同时为真。(true^true=false      true^false=true     false^false=false     false^true=true)
作者: HM张博文    时间: 2013-6-2 11:00
楼主是来混分的吧{:soso_e113:}右移和异或是一起学的,不需要开2个贴来问吧
作者: 杨青    时间: 2013-6-2 11:06
按位异或运算   按位异或运算符“^”是双目运算符。
其功能是参与运算的两数各对应的二进位相异或,当两对应的二进位相异时,结果为1,相同时,结果为0.
例如 9^5可写成算式如下:   00001001^00000101   00001100   (十进制为12)  
作者: 花心々小土豆    时间: 2013-6-2 12:49
^ 按位异或运算符,重点是“位”,逐位经行比较,相同为 0,不同为 1。例子上面楼上哥们们说的太多了!
位运算符还有:& 按位与,| 按位或,^ 按位异或,~ 取反,<< 左移,>> 右移,>>>无符号右移
其中 ~ 是单目运算符,其他均为双目运算符。
作者: 精彩生活向钱看    时间: 2013-6-2 12:54
这个符号是异或符号,当两边同为true时,结果为false.当两边同为false时,结果仍为false,只有当两边有真有假时,结果才是true,和或运算是有区别的,注意区分!
作者: 孔雀东南飞    时间: 2013-6-2 13:41
本帖最后由 孔雀东南飞 于 2013-6-2 13:42 编辑

楼主:
这是 逻辑运算符,用于连接boolean类型的表达式,一一列出:
         & 与,两边都为真时结果才为真。(两边都运算)

         ^  异或,只有一边为真一边为假结果才为真   

         !   非,TRUE为FALSE     FALSE为TRUE
         |   或,只要有一边为真,结果就为真
         &&短路,左边为假时,右边不运算。其他与&一样。
         ||短路,左边为真时,右边不运算。

作者: Sword    时间: 2013-6-2 14:48
如果问题已解决,请重新编辑帖子改为“已解决”,否则继续追问,谢谢合作!
关于把"未解决"的问题修改成"已解决"的说明 :http://bbs.itheima.com/thread-49464-1-1.html

作者: 刘晓    时间: 2013-6-2 18:55
刚开始看毕老师的视频,昨天看到了你说的这个运算符的问题。^这个符号是按位异或的意思,都是真的时候是假,一真一假为真,你说的那个false^false=false,其他的就是true^true=false, true^false=true, false^true=true。再比如说5^9=12
   5:0101
^9:1001
------------
12:1100     






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