= +和+ =之间有什么区别?

时间:2013-10-30 06:31:06

标签: java

两种符号之间有什么区别:

encryText =+ text;

encryText += text;

注意:encryText和text都是字符串

3 个答案:

答案 0 :(得分:7)

encryText =+ text;

可以解释为

encryText = +text; // positive(text) assigned to encryText

encryText += text;

可以解释为

encryText = encryText + text; // encryText is added with text and assigned back to encryText

positive(text) - 表示正整数。你只是明确指出这里的标志。通常,正整数是在没有+符号的情况下指定的。

1 - 正数1(即使没有+符号,也表示正整数1)

+1 - 正数1,+符号已明确指定(与上述内容完全不同,除了显式+

-1 - 负数1,需要-符号来表示其为负整数。


修改

您编辑了问题并完全更改了上下文(完全没有完成)。不过,如果两者都是字符串,

encryText += text;

可以解释为

encryText = encryText + text; // String concatenation happens here

encryText =+ text; - 会给你一个编译错误。您不能在字符串上使用+。它的无效操作可以在java中的String上执行。

答案 1 :(得分:1)

encryText =+ text;

不是有效代码,会导致编译错误。 见here

答案 2 :(得分:0)

差异是= +就java规范而言,不是运算符(http://docs.oracle.com/javase/tutorial/java/nutsandbolts/operators.html)。大多数java可能会将您的语句解释为

encryText = +text;(无论我做什么,我都不知道)

但它不会做与+ =相当的事情。