溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ASP.NET中C#基礎(chǔ)知識有哪些

發(fā)布時間:2021-08-25 14:56:34 來源:億速云 閱讀:98 作者:小新 欄目:開發(fā)技術(shù)

這篇文章將為大家詳細講解有關(guān)ASP.NET中C#基礎(chǔ)知識有哪些,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

一、C#是一種面向?qū)ο蟮木幊陶Z言,主要用于開發(fā)可以在.net平臺上運行的應用程序。是一種強類型語言,因此每個變量都必須具有聲明類型。C#中有兩種數(shù)據(jù)類型:值類型和引用類型。(其中值類型用于存儲值,引用類型用于存儲實際數(shù)據(jù)的引用)。

1.值類型

值類型表示實際的數(shù)據(jù),存儲在棧堆中。C#中多數(shù)基本類型都是數(shù)值類型。值類型包括簡單類型、枚舉類型和結(jié)構(gòu)類型。

簡單類型包含數(shù)值類型和bool類型。(一般情況下根據(jù)需求選擇數(shù)值類型。當數(shù)值較小時可嘗試選擇byte類型)。

2.引用類型

引用類型表示指向數(shù)據(jù)的指針或者引用,可存儲實際數(shù)據(jù)的引用。引用類型為null時表示沒有引用任何對象。引用類型包括接口、類、數(shù)組和指針等。其中類中又包含裝箱類型、委托、自定義類。(說明:盡管string是應用類型,但如果用到了相等運算符==或者!=時則表示比較string對象的值)。

3.裝箱和拆箱

簡單的說,裝箱就是從值類型到引用類型的轉(zhuǎn)換。同樣,拆箱是從引用類型到值類型的轉(zhuǎn)換。使用拆箱可以像操作簡單類型一樣操作復雜的引用類型,這也是C#強大的功能。

簡單的裝箱和拆箱的實例

class Test
 {
 static void Mian()
 {
  int i = 3;
  object a = i;//裝箱
  int j = (int)a;//拆箱
 }
 }

說明:在裝箱和拆箱的過程中,任何值類型都可以被當做object引用類型來看。當一個 裝箱操作把一個值類型轉(zhuǎn)換成一個引用類型時,不需要顯示地強制類型轉(zhuǎn)換;而拆箱操作把引用類型轉(zhuǎn)換到值類型時,由于它可以強制轉(zhuǎn)換到任何可以相容的值類型,所以必須顯示地強制類型轉(zhuǎn)換。

二、常量和變量

1、常量:也稱為常數(shù),在編譯時已知并運行過程中不變的量,常數(shù)被聲明為字段,聲明時在字段的類型前面使用const關(guān)鍵字,常量必須在聲明時初始化。常數(shù)可標記為public ,private,protected,internal,protected internal這些訪問修飾符定義了用戶訪問該常數(shù)的方式。

2、變量:變量的命名規(guī)則必須符合標識的命名規(guī)則,并且變量名要盡量有意義,以便閱讀。變量是值在程序運行過程中不斷變換的量,通常用來保存程序運行過程中輸入的數(shù)據(jù)、計算獲得的中間結(jié)果和最終結(jié)果。

使用變量前必須對其進行聲明,變量可以保存某個給定類型的值。聲明變量時,還需要制定它的名稱。聲明變量的形式:【訪問修飾符 數(shù)據(jù)類型 變量名稱】。

修飾符的訪問級別:

public :使成員可以從任何位置訪問

protected:使成員可以從聲明它的類及其派生類內(nèi)部訪問

private: 是成員僅從聲明它的類內(nèi)部訪問

internal:使成員僅可以從聲明它的程序集內(nèi)部訪問

三、類型轉(zhuǎn)換

1、隱式類型轉(zhuǎn)換

隱式類型轉(zhuǎn)換是指不需要聲明就能進行的轉(zhuǎn)換。進行隱式轉(zhuǎn)換時,編譯器不需要進行檢查就能安全地進行轉(zhuǎn)換。

                                      隱式類型轉(zhuǎn)換表
源類型目標類型
sbyteshort, int long double decimal
byteshort,ushort,int uint,ulong,float,double,decimal
shortint ,long,float,double,decimal
ushortint ,uint,long ,ulong,float,double,decimal
int long float,double,decimal
uintlong ulong float double decimal
charushort int unit long float double decimal 
floatdouble
ulong float double decimal
long float double decimal

說明:從int long ulong float簡單類型轉(zhuǎn)為float時會出現(xiàn)精度損失。

2、顯式類型轉(zhuǎn)換

顯式類型轉(zhuǎn)換也可以稱為是強制類型轉(zhuǎn)換,它需要在代碼中聲明要轉(zhuǎn)換的類型。如果在不存在隱式轉(zhuǎn)換類型之間進行轉(zhuǎn)換,就需要使用顯式類型轉(zhuǎn)換。

強制類型轉(zhuǎn)換可以使用Convert關(guān)鍵字進行數(shù)據(jù)類型的強制轉(zhuǎn)換。

例如:float f=123.345;

         int i=(int)f;

或者:float f=123.345

        int i=Convert.ToInt32(f);

說明:由于顯式類型轉(zhuǎn)換包括所有隱式類型轉(zhuǎn)換和顯式類型轉(zhuǎn)換,一次總是可以使用強制類型轉(zhuǎn)換表達式從任何數(shù)值類型轉(zhuǎn)換為任何其他數(shù)值類型。

四、運算符及表達式

C#提供了大量的運算符,這些運算符指定在表達式中執(zhí)行哪些操作符號。表達式是可以計算且結(jié)果為單個值、對象、方法或命名空間的代碼片段。

1、算術(shù)運算符和算術(shù)表達式

算術(shù)運算符包括+ - * / 和%。(過于簡單不在贅述);

2、關(guān)系運算符和關(guān)系表達式

關(guān)系運算符包括:<>!= == <=  >=等(各種語言都是相同的);

3、賦值運算符和賦值表達式

賦值運算符用于為變量、屬性、事件或者索引元素賦新值。常用的有:=, +=,-=,*=,/=,^=,%=,<<=(右移賦值),>>=(左移賦值)等。

4、邏輯運算符和邏輯表達式

邏輯運算符包括:&(與操作符),^(異或操作符),!(非操作符),|(或操作符),用邏輯運算符把運算對象連接起來。

5、位運算符

位運算符指將它的操作數(shù)看成一個二進制的集合,每個二進制位可以取值0或1。<<左移,>>右移。

6、其他運算符

遞增、遞減運算符:++,--,a--,a++.

條件運算符:?:根據(jù)布爾類型表達式的值返回兩個值中的一個。例如:int a=1; int b=2; a!=b?a++:a--;(如果a!=b,該實例返回執(zhí)行結(jié)果為2,否則為1)。

new運算符:用于創(chuàng)建對象和調(diào)用構(gòu)造函數(shù)。例如: int i=new int();相當于 int i=0;

as運算符:用于在兼容的引用類型之間執(zhí)行轉(zhuǎn)換。例如: string s =someObject as string;  as運算符類似于強制轉(zhuǎn)換,當轉(zhuǎn)換失敗時,運算符產(chǎn)生空值,而不是引發(fā)空值。

7、運算符的優(yōu)先級

基本>>單目>>乘除>>加減>>移位>>比較>>相等>>位與>>位異或>>位或>>邏輯與>>邏輯或>>條件>>賦值

五、字符串處理

1、比較字符串

String 類提供了一系列的方法用于字符串的比較,如CompareTo和Equals等。

其中CompareTo方法用于比較兩個字符串是否相等。   格式:String.CompareTo(String);返回數(shù)值類型

Equals方法用于確定兩個string對象是否具有相同的值。格式:String.Equals(String);返回布爾類型

2、定位及其字符串

定位字符串中的某個字符或紫川第一次出現(xiàn)的位置使用IndexOf方法。格式:String.IndexOf(String);其中的參數(shù)表示需要定位的字符串。(注意大小寫的書寫)。

3、格式化字符串

.Net提供了一種靈活全面的方式,能夠?qū)⑷魏螖?shù)值、枚舉、日期時間等基本數(shù)據(jù)類型表示為字符串。格式化由格式說明符的字符串表示,該字符串指示如何表示基類型。

格式為:String Format(String,Object);例如:

//格式化為Currency類型
string str1=String.Format("(C)Currency:{0:C}\n",-123.4556f);
//格式化為ShortDate類型
string str2=String.Format("(d)ShortDate:{0:d}\n",DateTime.Now);

4、截取字符串

SubString方法可以從指定字符串中截取子串。格式:String.SubString(Int32,Int32);  第一個參數(shù)表示子串的起始位置,第二個參數(shù)表示子串的結(jié)束位置。

5、分裂字符串

Split()方法可以把一個字符串按照某個分隔符分裂成一系列小的字符串。格式:String []Split(char[]);參數(shù)為分割字符串的數(shù)組。

string str="hello world";
string[] split=str.Split(new Char[]{'.','!'});
foreach(string s in split)
{
 if(s.Tirm()!='''')
 {
 Console.WriteLine(s);
 }
//或者修改為
 string []split=str.Split(','.'!');

6、插入和填充字符串

插入字符串:Insert()方法,用于在一個字符串的指定位置插入另外一個字符串,從而構(gòu)造一個新的字符串。格式:String.Insert(int,String);第一個參數(shù)為指定插入的位置。

填充字符串:PadLeft()方法和PadRight()方法添加指定數(shù)量的空格實現(xiàn)左右對齊。格式:String PadLeft(int,char)。String PadRight(int Char);

7、刪除和剪切字符串

刪除字符串:Remove()方法用于在一個字符串的指定位置刪除指定的字符。格式:String Remove(int ,int);第一個參數(shù)表示刪除的位置,第二個參數(shù)表示刪除字符的數(shù)量。

剪切字符串:常用的剪切首位的多余字符用到的方法有: Trim(),TrimStart(),TrimEnd();格式如下:

String Trim(Char[]);//從字符串的開頭和結(jié)尾處一處空白。
String TrimStart(Char[]);//從字符串的開頭處移除字符串在字符數(shù)組中指定的字符。
String TrimEnd(Char[]);//從字符串的結(jié)尾處移除字符數(shù)組中指定的字符。

8、復制字符串

Copy()方法可以把一個字符串復制到另一個字符串中。格式:String Copy(String);//參數(shù)為需要復制的字符串,方法返回目標字符串。

9、替換字符串

Replace()方法可以替換掉一個字符串中的某些特定的字符或者子串。格式:String Replace(string ,string );第一個參數(shù)為待替換子串,第二工人參數(shù)為替換后的新子串。

六、流程控制

1、分支語句

1>if... else語句

if(布爾表達式)

{  代碼片段1}

else{  代碼片段2}

2>switch語句

switch(條件)

{   case 條件1:

     break;

   '''''

}

2、循環(huán)語句

for()循環(huán)

while()語句

do while語句

foreach語句

3、異常處理語句

try.....catch語句

try.....finally語句,finally塊用于清除try塊中分配的任何資源,以及運行任何即使在發(fā)生異常時也必須執(zhí)行的代碼。控制總是傳遞給finally塊,與try塊的退出方式無關(guān)。

try...catch..finally語句

throw語句,用于立即無條件地引發(fā)異常,控制永遠不會到達緊跟在throw后面的語句。

七、數(shù)組

數(shù)組是從System.Array派生的引用類型。

1、數(shù)組的聲明:

一般語法:type[]arrayName;type[,]arrayName;

2、初始化數(shù)據(jù)(數(shù)組初始化的方式很多,可以通過new運算符創(chuàng)建數(shù)組元素初始化為它們的默認值)

//舉例
int []arr=new int[6];
int [,]arr=new int[2,3];
int []arr1=new int[3]{1,2,3};
int [,]arr2=new int[3,2]{{2,3},{5,5},{3,5}};
string []arr;
arr=new string[3]{"sd","dddd","aaaa"};
int [,]arr;
arr=new int[,]{{2,3},{4,5},{4,2}};
//創(chuàng)建數(shù)組時可以省略new和數(shù)組長度
string[]arr={"ddd","fff","sss"};
int [,]arr3={{2,3},{4,5},{3,2}};

3、數(shù)組的遍歷

C#用foreach語句進行遍歷數(shù)組,是一種簡單的明了的方法來循環(huán)訪問數(shù)組中的元素。

int []arr={2,3,6,3,2};
foreach(int i in arr){
 system.Console.write({0},i);
}

關(guān)于“ASP.NET中C#基礎(chǔ)知識有哪些”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節(jié)

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

AI