在编程中(Java、C、C++、JavaScript 等),递增运算符 ++
将变量的值增加 1。类似地,递减运算符 --
将变量的值减少 1。
a = 5 ++a; // a becomes 6 a++; // a becomes 7 --a; // a becomes 6 a--; // a becomes 5
到目前为止很简单。但是,当这两个运算符用作前缀和后缀时,存在一个重要的区别。
++ 和 -- 运算符作为前缀和后缀
- 如果在前缀中使用
++
运算符,例如:++var
,则var
的值会增加 1;然后返回该值。 - 如果在后缀中使用
++
运算符,例如:var++
,则首先返回var
的原始值;然后var
的值增加 1。
--
运算符的工作方式与 ++
运算符类似,只是 --
将值减少 1。
让我们在 C、C++、Java 和 JavaScript 中看看 ++
作为前缀和后缀的用法。
示例 1:C 编程
#include <stdio.h>
int main() {
int var1 = 5, var2 = 5;
// 5 is displayed
// Then, var1 is increased to 6.
printf("%d\n", var1++);
// var2 is increased to 6
// Then, it is displayed.
printf("%d\n", ++var2);
return 0;
}
示例 2:C++
#include <iostream>
using namespace std;
int main() {
int var1 = 5, var2 = 5;
// 5 is displayed
// Then, var1 is increased to 6.
cout << var1++ << endl;
// var2 is increased to 6
// Then, it is displayed.
cout << ++var2 << endl;
return 0;
}
示例 3:Java 编程
class Operator {
public static void main(String[] args) {
int var1 = 5, var2 = 5;
// 5 is displayed
// Then, var1 is increased to 6.
System.out.println(var1++);
// var2 is increased to 6
// Then, var2 is displayed
System.out.println(++var2);
}
}
示例 4:JavaScript
let var1 = 5, var2 = 5;
// 5 is displayed
// Then, var1 is increased to 6
console.log(var1++)
// var2 is increased to 6
// Then, var2 is displayed
console.log(++var2)
所有这些程序的输出将是相同的。
输出
5 6