Java核心技术卷I基础知识(原书第9版)
上QQ阅读APP看书,第一时间看更新

3.5.1 自增运算符与自减运算符

当然,程序员都知道加1、减1是数值变量最常见的操作。在Java中,借鉴了C和C++的实现方式,也使用了自增、自减运算符:n++将变量n的当前值加1;n––将n的值减1。例如:

n的值将变为13。因为这些运算符改变了变量的值,所以它的操作数不能是数值。例如,4++就是一条非法的语句。

实际上,这两个运算符有两种形式。上面介绍的是运算符放在操作数后面的“后缀”形式,还有一种“前缀”形式,++n。两种方式都是对变量值加1。但在表达式中,这两种形式就有区别了。前缀方式先进行加1运算;后缀方式则使用变量原来的值。

我们建议不要在其他表达式的内部使用++,这样编写的代码很容易令人困惑,并会产生烦人的bug。

(当然,++运算符作为C++语言名称的一部分,也引发了有关程序设计语言的第一个笑话。C++的反对者认为这种语言的名称也存在着bug,他们说:“因为只有对它改进之后,我们才有可能使用它,所以它的名字应该命名为++C。”)