快速入門 前面講過如何使用算術操作符來建立新值。例如,以下語句使用操作符+來建立比變數answer大42的一個值,新值將寫入控制台:
Console.WriteLine(answer + 42);
前面還講過如何使用指派陳述式來更改一個變數的值。以下語句使用賦值操作符將answer的值變成42:
answer = 42;
如果希望在一個變數的值上加42,可以將賦值操作符與加法操作符合并到一起。例如,以下語句在answer上加42,並將新值賦給answer。換言之,在運行該語句之後,answer的值將比之前大42:
answer = answer + 42;
雖然這是一個有效語句,但有經驗的程式員不會這樣寫。在變數上加一個值是非常普遍的一個操作,所以Microsoft Visual C#專門提供了一個複合賦值操作符+=來簡化這個操作。為了在answer上加42,有經驗的程式員會這樣寫:
answer += 42;
利用這個捷徑,可以將任何算術操作符與賦值操作符合并到一起,表5.1對此進行了總結。這些操作符統稱為複合賦值操作符(compound assignment operator)。
表5.1 複合賦值操作符
|
錯誤寫法 |
正確寫法 |
| variable = variable * number; |
variable *= number; |
| variable = variable / number; |
variable /= number; |
| variable = variable % number; |
variable %= number; |
| variable = variable + number; |
variable += number; |
| variable = variable - number; |
variable -= number; |
提示 複合賦值操作符與簡單賦值操作符具有一樣的優先順序和右結合性。
操作符+=也可作用於字串;它能將一個字串附加到另一個字串末尾。例如,以下代碼將在控制台上顯示"Hello John":
string name = "John";
string greeting = "Hello ";
greeting += name;
Console.WriteLine(greeting);
但是,不能將其他任何複合賦值操作符用在字串上。
注意 需要讓一個變數遞增或遞減1時,不要使用複合賦值操作符,而是使用操作符++和--。例如,以下語句的寫法是錯誤的:
count += 1;
正確寫法如下:
count++;