正如我們平時的四則混合運算一樣,計算機裡面也有不少運算子
算述運算子
加減乘除運算子和我們平時用的數學運算是一樣的,並且也支援使用小括號,中括號和大括號不支援.程式裡面多了一種運算,叫求模,其實就是求餘數,符號為"%"
比如5%2=1;意思是5除以2餘數是1
程式碼是:
Console.Write(5%2);
語言入門:[11]運算子#
兩個加號,或兩個減號,就叫做自增或自減
比如
int x=0;
x++;
Console.Write(x);
x變成了1
可以看出,x++和x=x+1效果是一樣的,這種寫法是為了方便
x--與x=x-1的效果也一樣
語言入門:[11]運算子#
以上的+,-,*,/,%,++,--,這些就叫做算術運算子,一般用來做算術計算,其中"/"是除號的意思
比較運算子
比較運算子,顧名思議就是用來作比較,比較運算子有>,<,>=,<=,==,!=共六個,注意>=是一個運算子,同理,<=也是一個運算子
比較運算子,運算後返回邏輯型值 ,就是布林值,以後碰到邏輯型值,我都會叫它布林值,也就是true,false.
比如
bool x = 3 > 5;
那麼x的值就是true;比較運算子較簡單
>:大於的意思
<:小於的意思
>=:大於或等於的意思
<=:小於或等於的意思
==:這個要注意,是兩者相同的意思,千萬不要寫成一個等號,一個等號就是賦值的意思了
!=:這個是不等於的意思;
特別說一下==號
比如
bool x=3==5;
Console.Write(x);
這句程式碼這樣寫你們就明白了
bool x=(3==5);
Console.Write(x);
首先計算3==5得出結果為false,再把false賦值給x
如圖,輸出的x值為false;
語言入門:[11]運算子#
條件運算子
條件運算子其實很簡單,但是真的容易讓人亂,所以一般情況,不建議大家使用,而建議大家使用if語句來代替它,但是這裡我們還是要講解一下
條件運算子的格式為
(邏輯表示式)?數值1:數值2
條件運算子當然是返回結果,當邏輯表示式用真時,返回數值1,當邏輯表示式為假時,返回數值2
比如
int x= true ? 1 : 2;
Console.Write(x);
輸出的x值為1
把程式碼改成
int x= false? 1 : 2;
Console.Write(x);
此輸出為2
語言入門:[11]運算子#
現在我們用條件運算子來比較兩個數的大小
int A = 5;
int B = 6;
int x = A > B ? A : B;
Console.Write(x);
看出來沒有,A,B,哪一個大,就輸了哪一個的結果,是不是跟我們上一節的if判斷語句做的數值大小判斷一樣?沒錯,其實這個條件運算子,用if判斷語句一樣可以實現的
語言入門:[11]運算子#
賦值運算子
賦值運算子有=,+=,-=,*=,/=,%=幾種
等號就簡單了,直接賦值 ,比如
int x=10;
就是把x的值賦為10;
+=的意思還是舉例來說比較貼切
比如
int x=1;
x+=10;
與語句
int x=1;
x=x+10;
效果是一樣的
輸出值為11,即x的值變成11
語言入門:[11]運算子#
-=,*=,/=,%=和+=的效果差不多
x-=10;與x=x-10;效果一樣
x*=10;與x=x*10;效果一樣
x/=10;與x=x/10;效果一樣
x%=10;與x=x%10;效果一樣
這裡我用*=做個示範,其餘的大家自已做實驗,輸出結果是10,沒錯.
可能大家對這種語言特性有點排斥,其實也沒什麼,以後用多了就會習慣,如果不想用這種寫法,也可以用x=x*10;這種寫法,我這個不關緊要的,我們之所以要懂,是因為有時要看懂別人寫的程式碼,但是不強求,自已也一定要用這種寫法
語言入門:[11]運算子#
邏輯運算子
邏輯運算子有三種&&, ,!
邏輯運算子是用來操作兩個邏輯值的,即兩個布林值
bool x=true;
bool y=true;
x&&y的意思是,只有x和y同時都是true時,返回的結果才為true,否則為false;
x y的意思是,x和y,只要任意一個為true,那麼返回的結果就為true,只有兩個都為false時,x y才為false;
!運算子的意思是取反,這個並不是操作兩個邏輯值的運算子,而是操作一個運算子的方法
比如!x,當x為true時,!x值為false,當x值為false,!x的值為true;
bool x = true;
bool y = false;
Console.Write(x&&y);
輸出結果為false
語言入門:[11]運算子#
bool x = true;
bool y = false;
Console.Write(x y);
這個是 運算子的例子
語言入門:[11]運算子#
這個是!運算子的例子
bool x = true;
Console.Write(!x);
語言入門:[11]運算子#
O型別
這個是強制轉換的型別,操作方法是
(型別名)值
比如
object a = 12;
int b = (int)a;
Console.Write(b);
(int)a的意思是把a的型別轉換為整型,不過有一點大家要清楚,不是什麼型別都能轉,轉錯了,程式什麼出錯的,得根據實際情況
語言入門:[11]運算子#
還有一種,書本也把它叫做運算,但我覺得應該稱作方法,在這裡,大家可以不理會,我只是隨意講講,看不看都沒事
那就是
Typeof(型別值)
Console.Write(typeof(int));
這個的意思是輸出int的型別,這個可能大家不理解,先放著,以後講類的時候會再提到