C# Online ! 第十三篇:C# ~ 運算子來嘍 Part II - 『指派運算子』!!
第十一、十二篇介紹了算術運算子與簡單的例子之後,這篇要跟大家介紹也是非常重要的『指派運算子』,在前面幾篇文章舉的範例中,其實都有出現過,接下來就來看一下常常會用到的『指派運算子』有哪些:
運算子 |
名稱 |
類型 |
說明 |
範例 |
結果 |
= |
指派運算子 |
Binary ( 二元運算子 ) |
指派運算子會將右方運算元的值儲存在左方運算元所表示的儲存位置、屬性或索引子,並傳回該值做為結果。運算元必須為同一型別 (或右方的運算元可以隱含轉換為左方運算元的型別)。 |
int x = 1; |
把1指定為x的值,所以x的值是1 |
+= |
加法指派運算子 |
Binary ( 二元運算子 ) |
使用 += 指派運算子的運算式如: x += y 相當於 x = x + y ,不同在使用+= 運算子,特別是當用很長的變數名稱,可以使代碼更容易閱讀。 + 運算子的意義,與 x 和 y 的型別有關 (若是數字運算元會相加,若是字串運算元則是會串連起來)。 |
int x = 2; x += 1; Console.WriteLine(x); |
x 的值為 3 |
-= |
減法指派運算子 |
Binary ( 二元運算子 ) |
使用 -= 指派運算子的運算式如: x -= y 相當於 x = x - y ,不同在使用 -= 運算子,特別是當用很長的變數名稱,可以使代碼更容易閱讀。 -運算子的意義,與 x 和 y 的型別有關 (數字運算元會相減,委派運算元會移除委派等等)。 |
int x = 2; x -= 1; Console.WriteLine(x); |
x 的值為 1 |
*= |
乘法指派運算子 |
Binary ( 二元運算子 ) |
使用 *= 指派運算子的運算式如: x *= y 相當於 x = x * y ,不同在使用 *= 運算子,特別是當用很長的變數名稱,可以使代碼更容易閱讀。 * 運算子已為數字型別預先定義來執行乘法。 |
int x = 2; x *= 2; Console.WriteLine(x); |
x 的值為 4 |
/= |
除法指派運算子 |
Binary ( 二元運算子 ) |
使用 /= 指派運算子的運算式如: x /= y 相當於 x = x / y ,不同在使用 /= 運算子,特別是當用很長的變數名稱,可以使代碼更容易閱讀。 / 運算子已為數字型別預先定義來執行乘法。 |
int x = 2; x /= 2; Console.WriteLine(x); |
x 的值為 1
|
%= |
模數指派運算子 |
Binary ( 二元運算子 ) |
使用 %= 指派運算子的運算式如: x %= y 相當於 x = x % y ,不同在使用 %= 運算子,特別是當用很長的變數名稱,可以使代碼更容易閱讀。 已為數字型別 (Numeric Type) 預先定義 % 運算子,以計算除法的餘數。 |
int x = 3; x %= 2; Console.WriteLine(x); |
x 的值為 1 |
還有其他的指派運算子,小弟日後會在文章內再做介紹,有興趣的朋友可以先參考MSDN運算子。
上面有提到+= 加法指派運算子,若是數字運算元會相加,若是字串運算元則是會串連起來,這邊再舉一個簡單的字串運算元例子,各位初心者朋友可以跟著我一起練習喔!
STEP 1 :先開啟專案吧!(圖1)
STEP 2 :這次的範例程式碼。
STEP 3:來看看結果會顯示什麼吧!( 圖2)
看完這個簡單的例子,有沒有更清楚了一點呢?
接下來還有一點要跟大家說,在使用運算子的時候,其實就跟算數學的時候類似,所以也是有分優先順序的唷!!
就像是我們在學數學都會知道,由左至右,先乘除後加減一樣,接下來也是舉簡單的例子給大家看吧:
var1 = var2 + var3 * var4; 這裡有用到指派運算子,+ 運算子 與 * 運算子,而這個例子的運算子先後處理順序應該為 *,再來是 + ,最後才是 = ,我們把數字帶進去,做一次練習會更清楚喔!
大家練習完以後,最後顯示的a的值是多少呢? 有興趣的朋友可以留言寫下答案唷!
希望資深的前輩們與跟我一樣剛開始想學習C#的初心者,可以給我一些建議跟鼓勵,或是幫我在FB按個讚! 謝謝呀 ~
(本文中相關內容有參閱、引述MSDN)
如果這篇文章對您有幫助,請幫我點選「我要推薦」、按個讚、或是幫我推到其他平台;您的鼓勵將會是我繼續努力的一大動力!!
若是有任何指教或是需要討論之處,也不用客氣,請在下面留言給我,我將會儘速回覆~