算術運算符 +:兩個操作數相加,例:2+3得5 -:第一個操作數減去第二個操作數 例:5-3得2 *:兩個操作數相乘,例:2*3得6 /:分子除以分母,例:5/2得2 %:取模運算符,整除後的餘數,例:5%2得1 ++:自增運算符,整數值增加1,例:i++ --:自減運算符,整數值減少1,例:i-- ...
算術運算符
+:兩個操作數相加,例:2+3得5
-:第一個操作數減去第二個操作數 例:5-3得2
*:兩個操作數相乘,例:2*3得6
/:分子除以分母,例:5/2得2
%:取模運算符,整除後的餘數,例:5%2得1
++:自增運算符,整數值增加1,例:i++
--:自減運算符,整數值減少1,例:i--
關係運算符
==:檢查兩個操作數的值是否相等,如果相等則為true
!=:檢查兩個操作數的值是否相等,如果不相等則為true
>:檢查左操作數的值是否大於右操作數的值,如果是則為true
<:檢查左操作數的值是否小於右操作數的值,如果是則為ture
>=:檢查左操作數的值是否大於或等於右操作數的值,如果是則為true
<=:檢查左操作數的值是否小於或等於右操作數的值,如果是則為true
邏輯運算符
&&:與運算符。如果兩個操作數都非零,則為true
||:或運算符。如果兩個操作數中有任意一個非零,則為ture
!:非運算符。如果條件為true則非運算符將使其為false
賦值運算符
=:賦值運算符,將右邊操作數的值賦給左邊操作數
+=:加且賦值運算符,將右邊操作數加上左邊操作數的結果賦值給左邊操作數
-=:減且賦值運算符,將左邊操作數減去右邊操作數的結果賦值給左邊操作數
*=:乘且賦值運算符,將右邊操作數乘以左邊操作數的結果賦值給左邊操作數
/=:除且賦值運算符,將左邊操作數除以右邊操作數的結果賦值給左邊操作數
%=:求模且賦值運算符,求兩個操作數的模賦值給左邊操作數
<<=:左移且賦值運算符
&=:按位與且賦值運算符
^=:按位異或且賦值運算符
|=:按位或且賦值運算符
位運算符
&:如果同時存在於兩個操作數中,二進位 AND 運算符複製一位到結果中
|:如果存在於任一操作數中,二進位 OR 運算符複製一位到結果中
^:如果存在於其中一個操作數中但不同時存在於兩個操作數中,二進位異或運算符複製一位到結果中
~:按位取反運算符是一元運算符,具有"翻轉"位效果,即0變成1,1變成0,包括符號位
<<:二進位左移運算符。左操作數的值向左移動右操作數指定的位數
>>:二進位右移運算符。左操作數的值向右移動右操作數指定的位數
位運算符"&"是雙目運算符 其功能是參與運算的兩數各對應的二進位相與 只有對應的兩個二進位均為1時,結果位才為1 ,否則為0 參與運算的數以補碼方式出現 例:9&5 9 的二進位補碼為 0000 1001 5 的二進位補碼為 0000 0101 結果 0000 0001 則:9 & 5 = 1 或運算符“|”是雙目運算符 其功能是參與運算的兩數各對應的二進位相或 只要對應的二個二進位有一個為1時,結果位就為1 參與運算的兩個數均以補碼出現 例:9|5 0000 1001 | 0000 0101 結果 0000 1101 則: 9 | 5 = 13
其他運算符
?::條件運算符 , 根據布爾型表達式的值返回兩個值中的一個
格式:condition ? first_expression : second_expression;
如果條件為 true,則計算第一表達式並以它的計算結果為準;如果為 false,則計算第二表達式並以它的計算結果為準。只計算兩個表達式中的一個
??:如果 ?? 運算符的左操作數非空,該運算符將返回左操作數,否則返回右操作數
運算符優先順序
算術運算符>>關係運算符>>邏輯運算符>>賦值運算符
示例
using System; namespace demo { class program { static void Main(String[] args) { int a = 5; int b; Console.WriteLine(5 + 5); Console.WriteLine(-a); Console.WriteLine(a - 1); Console.WriteLine(5 * 2); Console.WriteLine(5.0 % 2.2); Console.WriteLine(a--); Console.WriteLine(--a); Console.WriteLine(true | false); Console.WriteLine(true ^ false); Console.WriteLine(1.1 < 1.1); Console.WriteLine("b 的值是 {0}", b = (a == 1) ? 20 : 30); } } }
結果