C#編程自學之運算符和表達式。本站提示廣大學習愛好者:(C#編程自學之運算符和表達式)文章只能為提供參考,不一定能成為您想要的結果。以下是C#編程自學之運算符和表達式正文
我們懂得完C#數據類型與變量以後,還會碰到變量之間的運算,例如盤算兩個數的和等等運算。那末,C#中都有那些經常使用的運算符呢?那末,往下看吧!
1、算數運算符
1.根本算數運算符
說到算數運算符,我們起首就應當可以想到我們數學中一些經常使用的運算符例如:加 減 乘 除 求余!
那末在C# 這些運算符都是若何表現的呢?
曉得C#根本運算符的表現以後我們該若何去應用呢?那末我們來看段代碼來看下甚麼是表達式。
int a = 10; //界說一個整形變量a 值為10 int b = 20; //界說一個整形變量b 值為20 //界說一個變量c 值為變量 a+b int c = a + b; //一組運算符所表述的代碼段簡稱運算符 //界說一個變量c1 值為變量 a1-b1 int c1 = a - b; //界說一個變量c2 值為變量 a2*b2 int c2 = a * b; //界說一個變量c3 值為變量 a3/b3 int c3 = a / b; //界說一個變量c4 值為變量 a4%b4 int c4 = a % b; Console.WriteLine("a + b = {0}",c); Console.WriteLine("a - b = {0}", c1); Console.WriteLine("a * b = {0}", c2); Console.WriteLine("a / b = {0}", c3); Console.WriteLine("a % b = {0}", c4);
上段代碼我們重要論述了兩個常識點,一個是根本運算符加法的應用和甚麼是表達式。那末我們來剖析一下。
我們來看第五行代碼來看C#中應用根本算數運算符異常簡略,跟我們數學上盤算加法一樣,起首看(a + b)同等於(10 + 20)盤算完成後將盤算成果賦給等號右邊的變量,如許就完成了一個根本的算數加法運算,那末停止一個加法運算的代碼描寫的代碼組合,我們便可以看作是C#中的表達式。
剖析完一個那末前面的年夜家必定都可以推出來了吧?那末我們來看看運轉的成果吧!
成果能否在你的預感當中呢?
2.自增運算符與自減運算符
懂得完根本運算符以後我們在來看一種很有效的運算符:自增運算授予自減運算符!
那末自增符號與自減運算符是甚麼意思呢? 空話不多說,看代碼:
int a = 1; a++; // a = a + 1 int b = a; a--; // a = a - 1 int c = a; Console.WriteLine("a++ : {0}", b); Console.WriteLine("a-- : {0}", c);
好的那末我們在剖析一下:
起首來看第二行a++;自增符號++等於自己加1, 那末a = 1 ,履行a++後(a 本身加1),a本身的值為2
那末在來看第四行a--;自薦符號--等於自己減1,那末a此時曾經等於2,履行a--後(a本身減1),a本身的值為1
剖析完以後照樣讓成果來驗證謎底吧!
2、賦值運算符
看完根本的算數運算符我們在來看一下甚麼是賦值運算符,其其實上邊的例子中我們曾經應用了賦值運算符,那甚麼是賦值運算符,對了就是為變量賦值的符號,也就是我們上邊例子中的等號。
那末賦值運算符就只要等號一個嗎?謎底錯,C#還為我們供給了一些便利我們簡化表達式的復制運算符,以下表:
那末這些等號都代表甚麼意思呢?其實很簡答,來看一段代碼跟上邊例子坐下比擬我們會發明,這些賦值運算符就是幫我們簡化了表達式罷了。
int a = 10; a = a + 10; //將a 的值付與 a(10) + 10 //運算完成後a = 20 Console.WriteLine(" a=a+10; a={0}",a); a = 10; //在將a復原回10 a += 10; //同等於 a = a + 10; 將a 的值付與 a(10) + 10 //運算完成後a照樣等於 20 Console.WriteLine(" a+= 10; a={0}", a);
照樣來剖析一下:
1到4行年夜家必定都可以看明確,那末直接看地7行,你想對了,其實 a+=10 同等與 a=a+10 只是這個運算符簡化了表達式。 那末照樣用現實來證實吧!
3、運算符優先級和括號的應用
說完運算符與表達我們來看看運算符之間的優先級,甚麼是優先級? 其實優先級就是當我們表達式中湧現多個運算符時,應當先履行哪一個運算符,就比如數學中的先乘除後加減,那末C#中也不破例也是先乘除後加減。關於更多的優先級我不盤算在這裡引見,由於我們完整可使用括號來提醒表達式的優先級()。對運算符優先級感興致可以參考C#相干書本。那末照樣用一個例子來描寫下C#中加減乘除的優先級吧!
int a = 10 * 2 - 10 / 2 + 3;//那末依據先乘除後加減的准繩我們獲得的成果應當是 18
Console.WriteLine("10 * 2 - 10 / 2 + 3 成果為:{0}", a);
那末照樣來剖析一下,依據先乘除後加減的軌則我們來看:
起首盤算10 * 2 成果是20
在盤算 10 / 2 成果是5
那末這個時刻 表達式編程 20 - 5 + 3 ,這裡要留意 加和減屬於統一級別運算符所以哪一個在後面先運算
這個時刻履行 20 - 5 成果是 15
在履行 15 + 3 成果為18 持續用現實來證實我的剖析。
那末好,這個時刻我如果想讓10 * 3 在讓2 + 3 在去讓10除怎樣辦? 不曉得?代碼告知你:
int a = 10 * 3 - 10 / (2 + 3);//這個時刻()中的運算符優先級最高所以先履行括號中的表達式
Console.WriteLine("10 * 3 - 10 / (2 + 3) 成果為:{0}", a);
持續來剖析一下,依據括號優先級最高的軌則我們來看:
起首履行(2 + 3) 成果是 5
在履行 10 * 3 成果為 30
此時表達式為 30 - 10 / 5 除號優先級高 先運算除法 表達式為 30 - 2
那末成果為28 看本相吧!
提醒:懂得運算符優先級也很主要,不外有了括號年夜部門情形下我們可以本身掌握優先級,所以靈巧公道的應用括號可以省去運算符優先級帶來的龐雜性。