C#語言入門:[11]運算子?

Tags: 語言, 運算子,

正如我們平時的四則混合運算一樣,計算機裡面也有不少運算子

算述運算子

加減乘除運算子和我們平時用的數學運算是一樣的,並且也支援使用小括號,中括號和大括號不支援.程式裡面多了一種運算,叫求模,其實就是求餘數,符號為"%"

比如5%2=1;意思是5除以2餘數是1

程式碼是:

Console.Write(5%2);

C#語言入門:[11]運算子

語言入門:[11]運算子#

C#語言入門:[11]運算子

語言入門:[11]運算子#

兩個加號,或兩個減號,就叫做自增或自減

比如

int x=0;

x++;

Console.Write(x);

x變成了1

可以看出,x++和x=x+1效果是一樣的,這種寫法是為了方便

x--與x=x-1的效果也一樣

C#語言入門:[11]運算子

語言入門:[11]運算子#

C#語言入門:[11]運算子

語言入門:[11]運算子#

C#語言入門:[11]運算子

語言入門:[11]運算子#

C#語言入門:[11]運算子

語言入門:[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;

C#語言入門:[11]運算子

語言入門:[11]運算子#

C#語言入門:[11]運算子

語言入門:[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

C#語言入門:[11]運算子

語言入門:[11]運算子#

C#語言入門:[11]運算子

語言入門:[11]運算子#

C#語言入門:[11]運算子

語言入門:[11]運算子#

C#語言入門:[11]運算子

語言入門:[11]運算子#

現在我們用條件運算子來比較兩個數的大小

int A = 5;

int B = 6;

int x = A > B ? A : B;

Console.Write(x);

看出來沒有,A,B,哪一個大,就輸了哪一個的結果,是不是跟我們上一節的if判斷語句做的數值大小判斷一樣?沒錯,其實這個條件運算子,用if判斷語句一樣可以實現的

C#語言入門:[11]運算子

語言入門:[11]運算子#

C#語言入門:[11]運算子

語言入門:[11]運算子#

賦值運算子

賦值運算子有=,+=,-=,*=,/=,%=幾種

等號就簡單了,直接賦值 ,比如

int x=10;

就是把x的值賦為10;

+=的意思還是舉例來說比較貼切

比如

int x=1;

x+=10;

與語句

int x=1;

x=x+10;

效果是一樣的

輸出值為11,即x的值變成11

C#語言入門:[11]運算子

語言入門:[11]運算子#

C#語言入門:[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;這種寫法,我這個不關緊要的,我們之所以要懂,是因為有時要看懂別人寫的程式碼,但是不強求,自已也一定要用這種寫法

C#語言入門:[11]運算子

語言入門:[11]運算子#

C#語言入門:[11]運算子

語言入門:[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

C#語言入門:[11]運算子

語言入門:[11]運算子#

C#語言入門:[11]運算子

語言入門:[11]運算子#

bool x = true;

bool y = false;

Console.Write(x y);

這個是 運算子的例子

C#語言入門:[11]運算子

語言入門:[11]運算子#

C#語言入門:[11]運算子

語言入門:[11]運算子#

這個是!運算子的例子

bool x = true;

Console.Write(!x);

C#語言入門:[11]運算子

語言入門:[11]運算子#

O型別

這個是強制轉換的型別,操作方法是

(型別名)值

比如

object a = 12;

int b = (int)a;

Console.Write(b);

(int)a的意思是把a的型別轉換為整型,不過有一點大家要清楚,不是什麼型別都能轉,轉錯了,程式什麼出錯的,得根據實際情況

C#語言入門:[11]運算子

語言入門:[11]運算子#

C#語言入門:[11]運算子

語言入門:[11]運算子#

還有一種,書本也把它叫做運算,但我覺得應該稱作方法,在這裡,大家可以不理會,我只是隨意講講,看不看都沒事

那就是

Typeof(型別值)

Console.Write(typeof(int));

這個的意思是輸出int的型別,這個可能大家不理解,先放著,以後講類的時候會再提到

語言, 運算子,
相關問題答案