溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

C#運(yùn)算符如何使用

發(fā)布時(shí)間:2022-01-21 09:59:17 來(lái)源:億速云 閱讀:161 作者:iii 欄目:開(kāi)發(fā)技術(shù)

本文小編為大家詳細(xì)介紹“C#運(yùn)算符如何使用”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“C#運(yùn)算符如何使用”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來(lái)學(xué)習(xí)新知識(shí)吧。

一、常量

變量,是一個(gè)在程序執(zhí)行期間,它的值是可以改變的。與之相反的,在程序運(yùn)行期間,不能改變值的,那就是常量。

常量的定義

常量是通過(guò) const 關(guān)鍵字來(lái)定義的,定義一個(gè)常量的語(yǔ)法如下:

const <datatype> <constantname>;

// 例如
const int num;
const char word;

num = 233;
word = 'c';

const string str = "hahahaha!";
const float f = 3.22f

常量和變量相似的是,一樣都可以先定義常量(變量)的數(shù)據(jù)類型,然后再給他賦值。也可以在定義數(shù)據(jù)類型的時(shí)候,直接賦值。

不同的是,變量在第一次賦值后,在后面如果想要改變變量值,可以通過(guò) = 賦值運(yùn)算符,直接賦予想要的值。然而常量不行,在第一次賦值后,就不能反復(fù)賦值。

二、運(yùn)算符

C# 中有許多豐富的內(nèi)置運(yùn)算符,例如:

(1)算術(shù)運(yùn)算符

(2)關(guān)系運(yùn)算符

(3)邏輯運(yùn)算符

(4)位運(yùn)算符

(5)賦值運(yùn)算符

(6)其他運(yùn)算符

1、算術(shù)運(yùn)算符

算術(shù)運(yùn)算符,顧名思義,就是用來(lái)進(jìn)行算術(shù)計(jì)算的運(yùn)算符。

int a = 123;
int b = 26;
int c;
// 加法
c = a + b; // 149
// 減法
c = a - b; // 97
// 乘法
c = a * b; // 3198
// 除法
c = a / b; // 4
// 取余
c = a % b; // 19
// 自增
c = ++a; // c=124;a=124
// 自減
c = a--; // c=123;a=122

(1)如果是兩種不同數(shù)據(jù)類型進(jìn)行計(jì)算,那么就需要考慮到數(shù)據(jù)類型之間的是屬于顯式轉(zhuǎn)換還是隱式轉(zhuǎn)換。

(2)如上面的程序,兩個(gè)整型的值(a和b)相除,那么 c 無(wú)論是整型類型的或者浮點(diǎn)類型的,結(jié)果都只會(huì)是一個(gè)整數(shù)。這一點(diǎn)可以想象為是兩數(shù)相除取整數(shù)。

(3)自增自減分別各有兩種表示方法

c=a++/c=a–或者c=++a/c=–a

這兩種表示方法表示意思也不一樣。前者是先將 a 的值賦予 c,然后在對(duì) a 進(jìn)行加減運(yùn)算;后者則是先對(duì) a 進(jìn)行加減運(yùn)算,運(yùn)算結(jié)束后的 a 的值在賦予變量 c。

2、關(guān)系運(yùn)算符

將兩個(gè)值或者兩個(gè)運(yùn)算式進(jìn)行關(guān)系比較的運(yùn)算符。經(jīng)常是被使用在條件判斷語(yǔ)句里面。進(jìn)行比較之后獲得的值一定是布爾值類型,要么為T(mén)rue,要么為False。

int a = 31;
int b = 13;
bool c;
// 相等 ==
c = a==b; // false

// 不等 !=
c = a!=b; // true

// 大于 > && 大等于 >=
c = a>b; // true
c = a>=b; // true

// 小于 < && 小等于 <=
c = a<b; // false
c = a<=b; // false
3、邏輯運(yùn)算符

邏輯運(yùn)算符就是將兩個(gè)或者多個(gè)的關(guān)系式關(guān)聯(lián)在一起,判斷最終為 true 或者 false。邏輯運(yùn)算符一般是和關(guān)系運(yùn)算符一起使用,經(jīng)常被用在條件判斷語(yǔ)句中。

(1)&& - 邏輯與運(yùn)算符,只有所有關(guān)系式的值都是 true,返回的結(jié)果才會(huì)是 true;只要有一個(gè)是 false,那么這個(gè)式子就是 false。

(2)|| - 邏輯或運(yùn)算符,只要所有關(guān)系式中有一個(gè)是 true,返回的結(jié)果為 true;只有全部為 false, 整個(gè)式子才會(huì)是 false。

(3)! - 邏輯非運(yùn)算符,關(guān)系式為 true,結(jié)果就為 false;反之,關(guān)系式為 false,結(jié)果就為 true。

bool a = true;
bool b = false;
bool c;
c = a && b; // false
c = a || b; // true
c = !a; // false
c = !b; // true
4、位運(yùn)算符

位運(yùn)算符作用于位,并逐位執(zhí)行操作。

那什么是位?

計(jì)算機(jī)中的計(jì)量單位,有KB、MB、GB等等,而最基本的計(jì)量單位則是字節(jié)(Byte),一個(gè)字節(jié)又是由 8 個(gè)比特(bit)組成的。而這個(gè)比特就是位,位的值只有 0 或 1。所以,位(bit)是計(jì)算機(jī)中最小的數(shù)據(jù)單位。

位運(yùn)算符

int a = 60; // 0011 1100
int b = 13; // 0000 1101

(1)&

將 A 和 B 的二進(jìn)制值一位一位的比較,如果該位同為 1,結(jié)果 C 中的對(duì)應(yīng)位置就為 1;否則就為 0.

int c = a&b; // 12	0000 1100

(2)|

也是將 A 和 B的二進(jìn)制進(jìn)行逐位比較,如果該位同為 0,結(jié)果 C 中的對(duì)應(yīng)位置就為0;否則為 1.

int c = a|b; // 61	0011 1101

(3)^

比較兩位數(shù)的二進(jìn)制,如果該位一邊是 1,另一邊是0,則返回結(jié)果 C 的對(duì)應(yīng)位置為1;其他都為 0.

int c = a^b; // 49	0011 0001

(4)~

取反符號(hào),即對(duì) A 的二進(jìn)制進(jìn)行翻轉(zhuǎn),為 0 的位為 1;為 1 的位為0.

int c = ~a; // -61	1100 0011

(5)<<

表示向左移動(dòng)右操作數(shù)指定的位數(shù)。

int c = a << 2; // 240	1111 0000

(6)>>

表示向右移動(dòng)右操作數(shù)指定的位數(shù)。

int c = a << 2; // 15	0000 1111
5、賦值運(yùn)算符

將右邊的操作數(shù)賦給左邊的操作數(shù),可以和算術(shù)運(yùn)算符或者位運(yùn)算符進(jìn)行關(guān)聯(lián)使用。

int a = 30;
int b = 21;

(1)=

這是最常見(jiàn),也是最常用的,最簡(jiǎn)單的賦值運(yùn)算符。將右邊的值賦給左邊。

b = a; // b = 30;

(2)+=、-=、*=、/=、%=

將算術(shù)運(yùn)算符和賦值運(yùn)算符進(jìn)行關(guān)聯(lián)使用。

a += b; // a = a + b = 51;
a -= b; // a = a - b = 9;
a *= b; // a = a * b = 630;
a /= b; // a = a / b = 1;
a %= b; // a = a % b = 9;

(3)&=、|=、<<=、>>=、^=

a &= b; // a = a & b = 20
a |= b; // a = a | b = 31
a <<= b; // a = a << b = 62914560
a >>= b; // a = a >> b = 0
a ^= b; // a = a ^ b = 11
6、其他運(yùn)算符

(1)sizeof(datatype) 用來(lái)返回?cái)?shù)據(jù)類型所占字節(jié)(byte)的大小。

sizeof(int); // 4
sizeof(short); // 2
sizeof(byte); // 1

(2)typeof(class) 用來(lái)返回 class 的類型。

Type t = typeof(C1); // S01.C1 --> namespaceName.className

(3)& 返回變量的地址,&a.

(4)* 變量的指針,*a.

(5)條件判斷 ? X : Y 條件表達(dá)式,如果條件判斷為 true,輸出X;為 false,輸出 Y。

int c = 32 >= 12 ? 1 : 0;

(6)is 判斷對(duì)象是否為某一類型。

(7)as 強(qiáng)制轉(zhuǎn)換,即便轉(zhuǎn)換失敗,也不會(huì)拋出異常。

讀到這里,這篇“C#運(yùn)算符如何使用”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過(guò)才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI