第 7.13 节 赋值 = *= /= %= += -= <<= >>= &= ^= |= 当操作数出现在具有相同优先级的两个运算符之间时,运算符的顺序关联性控制运算的执行顺序: 除了赋值运算符外,所有的二元运算符都向左顺序关联,意思是从左向右执行运算。例如,x + y + z 按 (x + y) + z 计算。 赋值运算符和条件运算符 (?:) 向右顺序关联,意思是从右向左执行运算。例如,x = y = z 按 x = (y = z) 计算。 优先级和顺序关联性都可以用括号控制。例如,x + y * z 先将 y 乘以 z 然后将结果与 x 相加,而 (x + y) * z 先将 x 与 y 相加,然后再将结果乘以 z。
"ABC" + "" + "" == "ABC" + "" TRUE
"ABC" + "" == "ABC" TRUE
角落里的理想 http://blog.csdn.net/zdsdiablo/
====================================================
"abc"+""之后的结果仍然是abc,所以它们相等
如果你这样写
"abc" + " "=="abc",那就不一样了.
第 7.5 节 基本 x.y f(x) a[x] x++ x-- new
typeof checked unchecked
第 7.6 节 一元 + - ! ~ ++x --x (T)x
第 7.7 节 乘法 * / %
第 7.7 节 加法 + -
第 7.8 节 移位 << >>
第 7.9 节 关系和类型检测 < > <= >= is as
第 7.9 节 相等 == !=
第 7.10 节 逻辑 AND &
第 7.10 节 逻辑 XOR ^
第 7.10 节 逻辑 OR |
第 7.11 节 条件 AND &&
第 7.11 节 条件 OR ||
第 7.12 节 条件 ?:
第 7.13 节 赋值 = *= /= %= += -= <<= >>= &= ^= |=
当操作数出现在具有相同优先级的两个运算符之间时,运算符的顺序关联性控制运算的执行顺序: 除了赋值运算符外,所有的二元运算符都向左顺序关联,意思是从左向右执行运算。例如,x + y + z 按 (x + y) + z 计算。
赋值运算符和条件运算符 (?:) 向右顺序关联,意思是从右向左执行运算。例如,x = y = z 按 x = (y = z) 计算。
优先级和顺序关联性都可以用括号控制。例如,x + y * z 先将 y 乘以 z 然后将结果与 x 相加,而 (x + y) * z 先将 x 与 y 相加,然后再将结果乘以 z。
所以"abc"+""结果还是"abc",
两个"abc"当然相等了。
楼上说的对,如果把""换成" "的话,结果就为假了。