版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第7章常用數(shù)據(jù)結(jié)構(gòu)與算法數(shù)據(jù)結(jié)構(gòu)和算法是程序設(shè)計的基石。本章重點(diǎn)講述C#中的幾個主要的數(shù)據(jù)結(jié)構(gòu)類型:字符串、數(shù)組和枚舉。本章還將介紹一些常用算法,如幾種典型排序算法的C#實(shí)現(xiàn)。2023/2/42C#程序設(shè)計實(shí)用教程
7.1字符串
字符串是應(yīng)用程序和用戶交互的主要方式之一。.NET提供了幾個類來快速實(shí)現(xiàn)字符串操作,包括String、StringBuilder等。2023/2/43C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
System.String是最常用的字符串操作類。下面從各個應(yīng)用的角度對String類進(jìn)行詳細(xì)的介紹。
1.比較字符串比較字符串是指按照字典排序規(guī)則,判定兩個字符的相對大小。在String類中,常用的比較字符串的方法包括Compare、CompareTo、CompareOrdinal以及Equals。2023/2/44C#程序設(shè)計實(shí)用教程方法說明Compare靜態(tài)方法。比較兩個指定的String對象CompareTo
非靜態(tài)方法。將此字符串與指定的對象或String進(jìn)行比較,并返回兩者相對值的指示Concat
靜態(tài)方法。連接String的一個或多個字符串Contains非靜態(tài)方法。返回一個值,該值指示指定的String對象是否出現(xiàn)在此字符串中Equals非靜態(tài)方法。確定兩個String對象是否具有相同的值Format靜態(tài)方法。將指定的String中的每個格式項替換為相應(yīng)對象的值的文本等效項IndexOf
非靜態(tài)方法。返回String或一個或多個字符在此字符串中的第一個匹配項的索引Insert非靜態(tài)方法。在該String中的指定索引位置插入一個指定的StringRemove非靜態(tài)方法。從該String中刪除指定個數(shù)的字符Replace非靜態(tài)方法。將該String中的指定String的所有匹配項替換為其他指定的StringSplit非靜態(tài)方法。返回包含該String中的子字符串(由指定Char或String數(shù)組的元素分隔)的String數(shù)組Substring非靜態(tài)方法。從此字符串中檢索子字符串ToLower
非靜態(tài)方法。返回該String轉(zhuǎn)換為小寫形式的副本ToUpper
非靜態(tài)方法。返回該String轉(zhuǎn)換為大寫形式的副本Trim非靜態(tài)方法。從此字符串的開始位置和末尾移除一組指定字符的所有匹配項串的基本概念
空串:不含任何字符的串稱為空串空格串:由一個或多個空格組成的串,稱為空格串。串相等:是指兩個串的長度相等且對應(yīng)的字符相等。模式匹配:確定子串在主串中首次出現(xiàn)位置的運(yùn)算。子串:串中任意個連續(xù)的字符組成的子序列稱為該串的子串。主串:包含子串的串稱為該子串的主串。
7.1.1靜態(tài)字符串String
(1)Compare方法Compare方法是String類的靜態(tài)方法,用于全面比較兩個字符串對象。
下面使用Compare方法來比較兩個字符串,輸出結(jié)果如注釋語句所示。
//定義兩個String對象,并對其賦值
System.String
strA="Hello";System.String
strB="World";
2023/2/47C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
//CompareConsole.WriteLine(String.Compare(strA,strB)); //-1Console.WriteLine(String.Compare(strA,strA)); //0Console.WriteLine(String.Compare(strB,strA)); //12023/2/48C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
(2)CompareTo方法
CompareTo方法將當(dāng)前字符串對象與另一個對象做比較,其作用與Compare類似,返回值也相同。
CompareTo與Compare相比,區(qū)別在于:
CompareTo不是靜態(tài)方法,可以通過一個String對象調(diào)用;
CompareTo沒有重載形式,只能按照大小寫敏感方式比較兩個整串。
2023/2/49C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
CompareTo方法的使用如下代碼所示:
//定義兩個String對象,并對其賦值
System.String
strA="Hello";System.String
strB="World";
//CompareTo
Console.WriteLine(strA.CompareTo(strB)); //-12023/2/410C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
(3)Equals方法Equals方法用于方便地判定兩個字符串是否相同,有兩種重載形式:
publicbool
Equals(string)publicstaticbool
Equals(string,string)如果兩個字符串相等,Equals()返回值為True;否則,返回False。Equals方法的使用如下代碼所示:
//EqualsConsole.WriteLine(String.Equals(strA,strB)); //falseConsole.WriteLine(strA.Equals(strB)); //false2023/2/411C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
(4)比較運(yùn)算符String支持兩個比較運(yùn)算符“==”、“!=”,分別用于判定兩個字符是否相等和不等,并區(qū)分大小寫。下例中,使用“==”、“!=”對“Hello”和“World”進(jìn)行比較。
//==和!=Console.WriteLine(strA==strB); //falseConsole.WriteLine(strA!=strB); //true2023/2/412C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
2.定位字符和子串定位子串是指在一個字符串尋找其中包含的子串或者某個字符,在String類中,常用的定位子串和字符的方法包括StartWith/EndsWith、IndexOf/LastIndexOf以及IndexOfAny/LastIndexOf。
2023/2/413C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
(1)StartWith/EndsWith方法StartWith方法可以判定一個字符串對象是否以另一個子字符串開頭,如果是返回True;否則返回False。其定義為:
publicbool
StartsWith(stringvalue)其中,參數(shù)value即待判定的子字符串。
//StartWith
Console.WriteLine(strA.StartsWith("He"));//trueConsole.WriteLine(strA.StartsWith("She"));//false另外,EndsWith方法可以判定一個字符是否以另一個子字符串結(jié)尾。
2023/2/414C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
(2)IndexOf/LastIndexOf方法IndexOf方法用于搜索一個字符串,某個特定的字符或子串第一次出現(xiàn)的位置,該方法區(qū)分大小寫,并從字符串的首字符開始以0計數(shù)。如果字符串中不包含這個字符或子串,則返回-1。定位字符:
int
IndexOf(charvalue)int
IndexOf(char
value,int
startIndex)int
IndexOf(char
value,int
startIndex,intcount)2023/2/415C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
定位子串:
int
IndexOf(stringvalue)int
IndexOf(string
value,int
startIndex)int
IndexOf(string
value,int
startIndex,intcount)在上述重載形式中,其參數(shù)含義如下:
Value:待定位的字符或者子串。
startIndex:在總串中開始搜索的起始位置。
Count:在總串中從起始位置開始搜索的字符數(shù)。
2023/2/416C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
下例在“Hello”中尋找字符“l(fā)”第一次出現(xiàn)的位置。
//Indexof
Console.WriteLine(strA.IndexOf('l')); //2同IndexOf類似,LastIndexOf用于搜索在一個字符串中,某個特定的字符或子串最后一次出現(xiàn)的位置,其方法定義和返回值都與IndexOf相同。2023/2/417C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
(3)IndexOfAny/LastIndexOfAny
IndexOfAny方法功能同IndexOf類似,區(qū)別在于,可以搜索在一個字符串中,出現(xiàn)在一個字符數(shù)組中的任意字符第一次出現(xiàn)的位置。2023/2/418C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
下例在“Hello”中尋找字符“l(fā)”第一次和最后一次出現(xiàn)的位置。
//IndexofAny|LastIndexOfAny
char[]anyOf={'H','e','l'};Console.WriteLine(strA.IndexOfAny(anyOf)); //0Console.WriteLine(strA.LastIndexOfAny(anyOf)); //3同IndexOfAny類似,LastIndexOfAny用于搜索在一個字符串中,出現(xiàn)在一個字符數(shù)組中任意字符最后一次出現(xiàn)的位置。
2023/2/419C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
3.格式化字符串Format方法用于創(chuàng)建格式化的字符串以及連接多個字符串對象。Foramt方法也有多個重載形式,最常用的為:
publicstaticstringFormat(string
format,paramsobject[]args);其中,參數(shù)format用于指定返回字符串的格式,而args為一系列變量參數(shù)。
2023/2/420C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
//FormatnewStr="";newStr=String.Format("{0},{1}!",strA,strB);Console.WriteLine(newStr); //Hello,World!在format參數(shù)中包含一些用大括號括起來的數(shù)字,如{0}、{1},這些數(shù)字分別一一對應(yīng)于args參數(shù)數(shù)組中的變量。在生成結(jié)果字符串時,將使用這些變量代替{i}。需要說明的是,這些變量并不要求必須為String類型。
2023/2/421C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
例如,想要輸出一定格式的時間字符串,便可以使用Format方法,如下面代碼所示。
newStr=String.Format("CurrentTime={0:yyyy-MM-dd}",System.DateTime.Now);Console.WriteLine(newStr); //形如:2008-09-19其中,格式字符串“yyyy-MM-dd”指定返回時間的格式形如“2008-09-19”。
2023/2/422C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
4.連接字符串(1)
Concat方法
Concat方法用于連接兩個或多個字符串//Concat
newStr="";newStr=String.Concat(strA,"",strB);Console.WriteLine(newStr); //“HelloWorld"2023/2/423C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
(2)Join方法
Join方法利用一個字符數(shù)組和一個分隔符串構(gòu)造新的字符串。常用于把多個字符串連接在一起,并用一個特殊的符號來分隔開。Join方法的常用形式為:
publicstaticstringJoin(string
separator,string[]values);其中,參數(shù)separator為指定的分隔符,而values用于指定所要連接的多個字符串?dāng)?shù)組。2023/2/424C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
下例用“^^”分隔符把“Hello”和“World”連起來。
//JoinnewStr="";String[]strArr={strA,strB};newStr=String.Join("^^",strArr);Console.WriteLine(newStr); //"Hello^^World"2023/2/425C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
(3)連接運(yùn)算符“+”String支持連接運(yùn)算符“+”,可以方便地連接多個字符串。例如,下例把“Hello”和“World”連接起來。
//+newStr="";newStr=strA+strB;Console.WriteLine(newStr); //"HelloWorld"2023/2/426C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
5.分隔字符串使用Split方法可以把一個整串,按照某個分隔符,分裂成一系列小的字符串。例如,把整串,按照某個分隔符,分裂成一系列小的字符串。例如,把整串“Hello^^World”按照字符“^”進(jìn)行分裂,可以得到3個小的字符串,即“Hello”、“”(空串)和“World”。Split方法最常用的形式為:
publicstring[]Split(paramschar[]separator);其中,參數(shù)separator數(shù)組包含分隔符。2023/2/427C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
//SplitnewStr="Hello^^World";char[]separator={'^'};String[]splitStrings=newString[100];splitStrings=newStr.Split(separator);inti=0;while(i<splitStrings.Length){ Console.WriteLine("item{0}:{1}",i,splitStrings[i]); i++;}輸出結(jié)果如下:
Item0:HelloItem1:Item2:World2023/2/428C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
6.插入和填充字符串String類包含了在一個字符串中插入新元素的方法,可以用Insert方法在任意插入任意字符。
Insert方法用于在一個字符串的指定位置插入另一個字符串,從而構(gòu)造一個新的串。Insert方法最常用的為:
publicstringInsert(int
startIndex,stringvalue);其中,參數(shù)startIndex用于指定所要插入的位置,從0開始索引;value指定所要插入的字符串。2023/2/429C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
下例中,在“Hello”的字符“H”后面插入“World”,構(gòu)造一個串“HWorldello”。
//InsertnewStr="";newStr=strA.Insert(1,strB);Console.WriteLine(newStr); //"HWorldello"2023/2/430C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
7.刪除和剪切字符串String類包含了刪除一個字符串的方法??梢杂肦emove方法在任意位置刪除任意長度的字符。也可以使用Trim/TrimeEnd/TrimStart方法剪切掉字符串中的一些特定字符。
2023/2/431C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
(1)Remove方法
Remove方法從一個字符串的指定位置開始,刪除指定數(shù)量的字符。最常用的形式為:
publicstringRemove(int
startIndex,intcount);其中,參數(shù)startIndex用于指定開始刪除的位置,從0開始索引;count指定刪除的字符數(shù)量。下例中,把“Hello”中的“ell”刪掉。
//RemovenewStr="";newStr=strA.Remove(1,3);Console.WriteLine(newStr); //"Ho"2023/2/432C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
(2)Trim/TrimStart/TrimEnd方法
若想把一個字符串首尾處的一些特殊字符剪切掉,如去掉一個字符串首尾的空格等,可以使用String的Trim()方法。其形式如下:
publicstringTrim() publicstringTrim(paramschar[]trimChars)其中,參數(shù)trimChars數(shù)組包含了指定要去掉的字符,如果缺省,則刪除空格符號。下例中,實(shí)現(xiàn)了對“@Hello#$”的凈化,去掉首尾的特殊符號。
2023/2/433C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
//TrimnewStr="";char[]trimChars={'@','#','$',''};StringstrC="@Hello#$";newStr=strC.Trim(trimChars);Console.WriteLine(newStr); //"Hello"另外,同Trim類似,TrimStart和TrimEnd分別剪切掉一個字符串開頭和結(jié)尾處的特殊字符。
2023/2/434C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
8.復(fù)制字符串String類包括了復(fù)制字符串方法Copy和CopyTo,可以完成對一個字符串及其一部分的復(fù)制操作。
2023/2/435C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
(1)Copy方法
若想把一個字符串復(fù)制到另一個字符數(shù)組中,可以使用String的靜態(tài)方法Copy來實(shí)現(xiàn),其形式為:
publicstringCopy(string
str);其中,參數(shù)str為需要復(fù)制的源字符串,方法返回目標(biāo)字符串。下例中,把strA字符串“Hello”復(fù)制到newStr中。
//CopynewStr="";newStr=String.Copy(strA);Console.WriteLine(newStr); //"Hello"2023/2/436C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
(2)CopyTo方法
CopyTo方法可以實(shí)現(xiàn)Copy同樣的功能,但功能更為豐富,可以復(fù)制字符串的一部分到一個字符數(shù)組中。其形式為:
publicvoidCopyTo(int
sourceIndex,char[]destination,int
destinationIndex,intcount);其中,參數(shù)sourceIndex為需要復(fù)制的字符起始位置,destination為目標(biāo)字符數(shù)組,destinationIndex指定目標(biāo)數(shù)組中的開始存放位置,而count指定要復(fù)制的字符個數(shù)。2023/2/437C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
下例中,把strA字符串“Hello”中的“ell”復(fù)制到newCharArr中,并在newCharArr中從第2個元素開始存放。
//CopyTo
char[]newCharArr=newchar[100];strA.CopyTo(2,newCharArr,0,3);Console.WriteLine(newCharArr); //”llo"2023/2/438C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
9.替換字符串想要替換一個字符串中的某些特定字符或者某個子串,可以使用Replace方法來實(shí)現(xiàn),其形式為:
publicstringReplace(char
oldChar,charnewChar);publicstringReplace(string
oldValue,stringnewValue);其中,參數(shù)oldChar和oldValue為待替換的字符和子串,而newChar和newValue為替換后的新字符和新子串。下例把“Hello”通過替換變?yōu)椤癏ero”。
//ReplacenewStr=strA.Replace("ll","r"); Console.WriteLine(newStr); //Hero2023/2/439C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
10.更改大小寫String提供了方便轉(zhuǎn)換字符串中所有字符大小寫的方法ToUpper和ToLower。下例首先把“Hello”轉(zhuǎn)換為“HELLO”,然后再變?yōu)樾懶问健癶ello”。
//ToUpper|ToLower
newStr=strA.ToUpper(); Console.WriteLine(newStr); //HELLOnewStr=strA.ToLower();Console.WriteLine(newStr); //hello2023/2/440C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
補(bǔ)充:提取子串利用字符串的提取子串方法Substring,就可從一個字符串中得到子字符串。Substring方法有兩個參數(shù),第一個參數(shù)指出從第幾個位置開始截取,第二個參數(shù)指出共提取幾個字符。截取以后的子串是另外一個字符串,而不是原來的字符串截短,原來的字符串不變。2023/2/441C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
usingSystem;classSubString{publicstaticvoidMain()
{stringstrOriginal="IlovesChina!";stringstrSub=strOriginal.Substring(2,12);
Console.WriteLine("strOriginal:"+strOriginal);
Console.WriteLine("strSub:"+strSub);stringstrTemp;for(inti=0;i<strOriginal.Length;i+=2)
{
strTemp=strOriginal.Substring(i,1);
Console.Write(strTemp);
}
}}2023/2/442C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
程序運(yùn)行結(jié)果如下:2023/2/443C#程序設(shè)計實(shí)用教程
7.1.1靜態(tài)字符串String
11.String小結(jié)本節(jié)介紹了最常用的String類,并從比較、定位子串、格式化、連接、分裂、插入、刪除、復(fù)制、大小寫轉(zhuǎn)換10個方面介紹了其方法和應(yīng)用。
之所以稱String對象為靜態(tài)串,是因為一旦定義一個String對象,就是不可改變的。在使用其方法(如插入、刪除操作)時,都要在內(nèi)存中創(chuàng)建一個新的String對象,而不是在原對象的基礎(chǔ)上進(jìn)行修改,這就需要開辟新的內(nèi)存空間。如果需要經(jīng)常進(jìn)行串修改操作,使用String類無疑是非常耗費(fèi)資源的,這時需要使用StringBuilder類。2023/2/444C#程序設(shè)計實(shí)用教程
7.1.2動態(tài)字符串StringBuilder
與String類相比,System.Text.StringBuilder類可以實(shí)現(xiàn)動態(tài)字符串。此外,動態(tài)的含義是指在修改字符串時,系統(tǒng)不需要創(chuàng)建新的對象,不會重復(fù)開辟新的內(nèi)存空間,而是直接在原StringBuilder對象的基礎(chǔ)上進(jìn)行修改。2023/2/445C#程序設(shè)計實(shí)用教程
7.1.2動態(tài)字符串StringBuilder
1.聲明StringBuilder串StringBuilder類位于命名空間System.Text中,使用時,可以在文件頭通過using語句引入該命名空間:usingSystem.Text;聲明StringBuilder對象需要使用new關(guān)鍵字,并可以對其進(jìn)行初始化。如以下語句聲明了一個StringBuilder對象myStringBuilder,并初始化為“Hello”:
StringBuilder
myStringBuilder=newStringBuilder("Hello");2023/2/446C#程序設(shè)計實(shí)用教程
7.1.2動態(tài)字符串StringBuilder
2.設(shè)置StringBuilder容量StringBuilder對象為動態(tài)字符串,可以對其設(shè)置好的字符數(shù)量進(jìn)行擴(kuò)展。另外,還可以設(shè)置一個最大長度,這個最大長度稱為該StringBuilder對象的容量(Capacity)。2023/2/447C#程序設(shè)計實(shí)用教程
7.1.2動態(tài)字符串StringBuilder
有兩種方式來設(shè)置一個StringBuilder對象的容量。(1)使用構(gòu)造函數(shù)StringBuilder構(gòu)造函數(shù)可以接受容量參數(shù),例如,下面聲明一個StringBuilder對象sb2,并設(shè)置其容量為100。//使用構(gòu)造函數(shù)StringBuildersb2=newStringBuilder("Hello",100);2023/2/448C#程序設(shè)計實(shí)用教程
7.1.2動態(tài)字符串StringBuilder
(2)使用Capacity讀/寫屬性Capacity屬性指定StringBuilder對象的容量。例如下面語句首先一個StringBuilder對象sb3,然后利用Capacity屬性設(shè)置其容量為100。//使用Capacity屬性StringBuildersb3=newStringBuilder("Hello");sb3.Capacity=100;2023/2/449C#程序設(shè)計實(shí)用教程
7.1.2動態(tài)字符串StringBuilder
3.追加操作追加一個StringBuilder是指將新的字符串添加到當(dāng)前StringBuilder字符串的結(jié)尾處,可以使用Append和AppendFormat來實(shí)現(xiàn)這個功能。(1)Append方法下例中,把一個StringBuilder字符串“Hello”追加為“HelloWorld!”。//AppendStringBuildersb4=newStringBuilder("Hello");sb4.Append("World!");Console.WriteLine(sb4); //"HelloWorld!"2023/2/450C#程序設(shè)計實(shí)用教程
7.1.2動態(tài)字符串StringBuilder
(2)AppendFormat方法AppendFormat方法可以實(shí)現(xiàn)對追加部分字符串的格式化,可以定義變量的格式,并將格式化后的字符串追加在StringBuilder后面。2023/2/451C#程序設(shè)計實(shí)用教程
7.1.2動態(tài)字符串StringBuilder
4.插入操作StringBuilder的插入操作是指將新的字符串插入到當(dāng)前的StringBuilder字符串的指定位置,如“Hello”變?yōu)椤癏eeeello”??梢允褂肧tringBuilder類的Insert方法來實(shí)現(xiàn)這個功能,常用形式為:publicStringBuilder
Insert(intindex,objectvalue);其中,參數(shù)index指定所要插入的位置,并從0開始索引,如index=1,則會在原字符串的第2個字符之前進(jìn)行插入操作;同Append一樣,參數(shù)value并不僅是只可取字符串類型。2023/2/452C#程序設(shè)計實(shí)用教程
7.1.2動態(tài)字符串StringBuilder
下例中,把一個StringBuilder字符串“Hello”通過插入操作修改為“Heeeello”。//InsertStringBuildersb6=newStringBuilder("Hello");sb6.Insert(2,"eee");Console.WriteLine(sb6); //"Heeeello"2023/2/453C#程序設(shè)計實(shí)用教程
7.1.2動態(tài)字符串StringBuilder
5.刪除操作StringBuilder的刪除操作可以從當(dāng)前StringBuilder字符串的指定位置,刪除一定數(shù)量的字符,例如把“Heeeello”變?yōu)椤癏ello”。可以使用StringBuilder類的Remove方法來實(shí)現(xiàn)這個功能,常用形式為:publicStringBuilder
Remove(int
startIndex,intlength);其中,參數(shù)startIndex指定所要刪除的起始位置,其含義同Insert中的index相同;length參數(shù)指定所要刪除的字符數(shù)量。2023/2/454C#程序設(shè)計實(shí)用教程
7.1.2動態(tài)字符串StringBuilder
下例中,把一個StringBuilder字符串“Heeeello”通過刪除操作修改為“Hello”。//RemoveStringBuildersb7=newStringBuilder("Heeello");sb7.Remove(2,2); //在”He”后面刪除個字符Console.WriteLine(sb7); //"Hello!"2023/2/455C#程序設(shè)計實(shí)用教程
7.1.2動態(tài)字符串StringBuilder
6.替換操作StringBuilder使用Replace方法來實(shí)現(xiàn)替換操作,例如把“Hello”變?yōu)椤癏ero”,就需要使用替換操作,將“l(fā)l”替換為“r”。這同String類的Replace方法非常類似,其常用形式包括:publicStringBuilder
Replace(char
oldChar,charnewChar);publicStringBuilder
Replace(string
oldValue,stringnewValue);其中,參數(shù)oldChar和oldValue為待替換的字符和子串,而newChar和newValue為替換后的新字符和新子串。2023/2/456C#程序設(shè)計實(shí)用教程
7.1.2動態(tài)字符串StringBuilder
下例把“Hello”通過替換為“Hero”。//ReplaceStringBuildersb8=newStringBuilder("Hello");sb8=sb8.Replace("ll","r"); Console.WriteLine(sb8); //Hero2023/2/457C#程序設(shè)計實(shí)用教程
7.1.2動態(tài)字符串StringBuilder
7.與String比較可以看出StringBuilder與String在許多操作上是非常相似的。而在操作性能和內(nèi)存效率方面,StringBuilder要比String好得多。而另一方面,String類提供了更多的方法,可以使開發(fā)能夠更快地實(shí)現(xiàn)應(yīng)用。在兩者的選擇上,如果應(yīng)用對于系統(tǒng)性能、內(nèi)存要求比較嚴(yán)格,以及經(jīng)常處理大規(guī)模的字符串,推薦使用StringBuilder對象;否則,可以選擇使用String。2023/2/458C#程序設(shè)計實(shí)用教程
7.2數(shù)組
數(shù)組的作用非常強(qiáng)大,數(shù)據(jù)也是基本數(shù)據(jù)結(jié)構(gòu)之一,是編程實(shí)現(xiàn)過程中必不可少的要素之一。2023/2/460C#程序設(shè)計實(shí)用教程
7.2.1數(shù)組的概念
數(shù)組(Array)是一種數(shù)據(jù)結(jié)構(gòu),一個數(shù)組由若干個類型相同的數(shù)組元素的變量,這些變量可以通過一個數(shù)組名和數(shù)組下標(biāo)(或者稱為索引)來訪問。C#中的數(shù)組下標(biāo)是從零開始,數(shù)組中的所在元素都具有相同的類型。在數(shù)組中,每一個成員叫做數(shù)組元素,數(shù)組元素的類型稱為數(shù)組類型,數(shù)組類型可以是C#中定義的任意類型,其中也包括數(shù)組類型本身。如果一個數(shù)組的類型不是數(shù)組類型,稱之為一維數(shù)組。如果數(shù)組元素的類型是數(shù)組類型,就稱之為多維數(shù)組,也就是說,數(shù)組定義可以嵌套。2023/2/461C#程序設(shè)計實(shí)用教程
7.2.1數(shù)組的概念
無論是一維數(shù)組還是多維數(shù)組,每個維的下標(biāo)都是從0開始,結(jié)束于這個維的數(shù)組長度減1。數(shù)組被用于各種目的,因為它提供了一種高效、方便的手段將相同類型的變量合成一組。例如,可以用數(shù)組保存一個月中每天的溫度記錄,貨物平均價格的記錄。數(shù)組的主要優(yōu)點(diǎn)是,通過這樣的一種方式組織數(shù)據(jù)使得數(shù)據(jù)容易被操縱。例如,有一個數(shù)組,它包括選定的一組學(xué)生的數(shù)學(xué)成績,操作該數(shù)組,很容易計算其平均數(shù)學(xué)成績。而且數(shù)據(jù)以這樣的方式組織數(shù)據(jù),會很容易實(shí)現(xiàn)對數(shù)據(jù)的排序。2023/2/462C#程序設(shè)計實(shí)用教程
7.2.1數(shù)組的概念
在實(shí)際使用數(shù)據(jù)的過程中,一般是先確定數(shù)據(jù)類型,然后根據(jù)實(shí)際情況確定數(shù)組的長度。C#中的數(shù)組是由System.Array類派生而來的引用對象,因此可以使用Array類的方法來進(jìn)行各種操作。另外,數(shù)組常常用來實(shí)現(xiàn)靜態(tài)的操作,即不改變其空間大小,如查找、遍歷等。數(shù)組也可以實(shí)現(xiàn)動態(tài)的操作、如插入、刪除等,但不推薦使用,而應(yīng)盡量使用集合來代替。2023/2/463C#程序設(shè)計實(shí)用教程
7.2.2System.Array類
System.Array類是C#中各種數(shù)組的基類,其常用屬性和方法的簡單說明如表7-1所示。2023/2/464C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
由具有一個下標(biāo)的數(shù)組元素所構(gòu)成的數(shù)組就是一維數(shù)組,一維數(shù)組是簡單的數(shù)組。例如:為了記錄50個銀行儲蓄用戶的賬號,就可以使用一個長度為50的一維數(shù)組來處理。一維數(shù)組比較直觀,使用起來相對容易。2023/2/465C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
1.一維數(shù)組的定義數(shù)據(jù)在使用前使用先進(jìn)行定義。定義一維數(shù)組的格式如下:
數(shù)據(jù)類型[]數(shù)組名:其中數(shù)組類型為各種數(shù)據(jù)類型,它表示數(shù)據(jù)元素的類型;數(shù)組名可以是C#合法的標(biāo)識符;在數(shù)組名與數(shù)據(jù)類型之間是一組空的方括號。例如:char[]charArr;//定義了一個字符型的一維數(shù)組int[]intArr;//定義了一個整型一維數(shù)組string[]strArr;//定義了一個字符串類型一維數(shù)組在定義數(shù)組后,必須對其進(jìn)行初始化才能使用;初始化數(shù)組有兩種方法,即動態(tài)初始化和靜態(tài)初始化。2023/2/466C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
2.動態(tài)初始化動態(tài)初始化需要借助new運(yùn)算符,為數(shù)組元素分配內(nèi)存空間,并為數(shù)據(jù)元素賦初始值。動態(tài)初始化數(shù)組的格式如下:
數(shù)組名=new數(shù)據(jù)類型[數(shù)組長度];在C#中,可以將數(shù)組定義與動態(tài)初始化合在一起,格式如下:
數(shù)據(jù)類型[]數(shù)組名=new數(shù)據(jù)類型[數(shù)組長度];2023/2/467C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
例如:
int[]intArr=newint[5];上面的語句定義了一個整型數(shù)組,它包含從intArr[0]到intArr[4]這5個元素。New運(yùn)算符用于創(chuàng)建數(shù)組,并用默認(rèn)值對數(shù)據(jù)元素進(jìn)行初始化。在本例中,所有數(shù)組元素的值都被初始化為0。當(dāng)然,用戶也可以為其賦予初始化值,程序代碼如下:
int[]intArr=newint[5]{3,6,9,2,10};此時數(shù)組元素的初始化值就是大括號中列出的元素值。2023/2/468C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
定義其他類型的數(shù)組的方法是一樣的,如下面的語句用于定義一個存儲10個字符串元素的數(shù)組,并對其進(jìn)行初始化: string[]strArr=newstring[10];在本例中,strArr數(shù)組中所有數(shù)組元素的初始值都為“”。2023/2/469C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
3.靜態(tài)初始化靜態(tài)初始化數(shù)組時,必須與數(shù)組定義結(jié)合在一起,否則程序就會報錯。靜態(tài)初始化數(shù)組的格式如下:
數(shù)據(jù)類型[]數(shù)據(jù)名={元素1[,元素2…]};用這種方法對數(shù)組進(jìn)行初始化時,無須說明數(shù)組元素的個數(shù),只需按順序列出數(shù)組中的全部元素即可,系統(tǒng)會自動計算并分配數(shù)組所需的內(nèi)存空間。例如:int[]intArr={3,6,9,2,10};string[]strArr={“English”,”Maths”,”Computer”,”Chinese”};2023/2/470C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
4.關(guān)于一維數(shù)據(jù)初始化的幾點(diǎn)說明(1)動態(tài)初始化數(shù)組時,可以把定義與初始化分開在不同的語句中者,例如:int[]intArr;//定義數(shù)組intArr=newint[5];//動態(tài)初始化,初始化元素的值均為0或者intArr=newint[5]{3,6,9,2,10};此時,在newint[5]{3,6,9,2,10}這條語句中,方括號中表示數(shù)組元素個數(shù)的“5”可以省略,因為后面大括號中已列出了數(shù)組中的全部元素。2023/2/471C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
4.關(guān)于一維數(shù)據(jù)初始化的幾點(diǎn)說明(2)靜態(tài)初始化數(shù)組必須與數(shù)組結(jié)合在一條語句中,否則程序就會出錯。(3)在數(shù)組初始化語句中,如果大括號中已明確列出了數(shù)組中的元素,即確定了元素個數(shù),則表示數(shù)組元素個數(shù)的數(shù)值(即方括號中的數(shù)值)必須是常量,并且該數(shù)值必須與數(shù)組元素個數(shù)一致。2023/2/472C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
5.訪問一維數(shù)組中的元素在C#中是通過數(shù)組名和下標(biāo)值來訪問數(shù)組元素的。在訪問數(shù)組元素時,其下標(biāo)可以是一個整型常量或整型表達(dá)式。例如,下面的數(shù)組元素的下標(biāo)都是合法的:
intArr[3],strArr[0],intArr[j],strArr[2*i-1]在實(shí)際的程序設(shè)計中,也可能導(dǎo)致下標(biāo)值超越正常取值范圍。如果下標(biāo)越界,將會拋出一個System.IndexOutOfRangeException的異常。2023/2/473C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
【例7-1】給定8個數(shù):8、7、6、5、4、3、2、1,將這些數(shù)存在數(shù)組中,并將其按從小到大的順序輸出。(1)定義一個數(shù)組,如數(shù)組名為QueArrey,并將其用給定的數(shù)進(jìn)行初始化。(2)遍歷數(shù)組,將8個數(shù)中最小的數(shù)找出來,與第1個位置上的數(shù)對調(diào)。其方法是:先找出存放最小的數(shù)組元素的下標(biāo),將其存放在變量temp中,然后將QueArray[0]和QueArray[temp]中的數(shù)對調(diào),使QueArray[0]中存放的是8個數(shù)中最小的數(shù)。(3)再從第2個數(shù)到第8個數(shù)中找出最小的數(shù),并按步驟(2)中的方法,將最小的數(shù)與第2個位置上的數(shù)對調(diào),使QueArray[1]中存放的是第2小的數(shù)。(4)依次類推,完成整個排序過程,并輸出結(jié)果。2023/2/474C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
程序代碼如下:usingSystem;
namespaceArraySort{classArraySort{staticvoidMain(){
inti,j,temp,m;
int[]QueArray=newint[]{8,7,6,5,4,3,2,1};for(j=0;j<QueArray.Length;j++){temp=j;2023/2/475C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
for(i=j+1;i<QueArray.Length;i++)//從j的下一個元素起開始比較{
if(QueArray[i]<QueArray[temp])
//比較數(shù)組元素temp=i;
//使temp為較小的數(shù)的下標(biāo)}
if(temp!=j){/*交換QueArray[temp]和QueArray[j]的值,
從而可以從所比較的數(shù)組元素中獲得較小
的婁賦給QueArray[j]*/m=QueArray[j];
QueArray[j]=QueArray[temp];
QueArray[temp]=m;}}2023/2/476C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
Console.WriteLine("輸出排序后的結(jié)果:");
for(j=0;j<QueArray.Length;j++)Console.Write("{0}",QueArray[j]);}}}執(zhí)行該程序后,程序輸出結(jié)果如下:123456782023/2/477C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
注意:(1)除了可以顯式地指出數(shù)組長度之外,更好的做法是使用System.Array類的Length屬性,數(shù)組的Length用于獲取數(shù)組所包含的全部元素的個數(shù)。(2)上面所用的排序方法是一種常規(guī)的方法,在C#中,對數(shù)組進(jìn)行排序還有更高效的方法;可以使用Array類的Sort方法完成這個功能。Sort方法有多種的重載方法,常用的形式如下: publicstaticvoidSort(Arrayarray);2023/2/478C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
【例7-2】給定8個數(shù):8、7、6、5、4、3、2、1,將這些數(shù)存在數(shù)組中,利用Array類的Sort方法將其按從小到大的順序輸出。usingSystem;
namespaceSortArray{classSortArray{staticvoidMain(){
int[]QueArray=newint[]{8,7,6,5,4,3,2,1};//定義數(shù)組
//輸出原始數(shù)組
Console.WriteLine("原始數(shù)組:");
for(inti=0;i<QueArray.Length;i++)Console.Write("{0}->",QueArray[i]);
Console.WriteLine();//進(jìn)行換行
Array.Sort(QueArray);//對數(shù)組排序
//輸出排序后的數(shù)組
Console.WriteLine("排序以后的數(shù)組:");for(inti=0;i<QueArray.Length;i++)Console.Write("{0}->",QueArray[i]);}}}2023/2/479C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
for(inti=0;i<QueArray.Length;i++)Console.Write("{0}->",QueArray[i]);
Console.WriteLine();//進(jìn)行換行
Array.Sort(QueArray);//對數(shù)組排序
//輸出排序后的數(shù)組
Console.WriteLine("排序以后的數(shù)組:");for(inti=0;i<QueArray.Length;i++)Console.Write("{0}->",QueArray[i]);}}}2023/2/480C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
6.查找元素在數(shù)組中查找元素,一是從整個數(shù)組中尋找到與給定值相同的元素來,可以使用Array類的BinarySearch方法完成這個功能。二是判定數(shù)組中是否含有一個特定的元素,可以用Contains方法來實(shí)現(xiàn)。(1)BinarySearch方法BinarySearch使用二進(jìn)制搜索算法在一維的排序Array中搜索算法,注意必須是已經(jīng)排序的數(shù)組。如果找到給定的值,則返回其下標(biāo);否則,返回一個負(fù)整數(shù)。常用形式如下: publicstaticint
BinarySearch(Array
array,objectvalue);其中,參數(shù)array為待搜索的數(shù)組,value為待尋找的元素值。2023/2/481C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
【例7-3】給定8個數(shù):8、7、6、5、4、3、2、1,將這些數(shù)存在數(shù)組中,利用Array類的BinarySearch方法返回其中的元素5的下標(biāo)。usingSystem;
namespaceBinarySearch{classBinarySearch{staticvoidMain(){//定義數(shù)組
int[]myArr={8,7,6,5,4,3,2,1};
//對數(shù)組排序
Array.Sort(myArr);
2023/2/482C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
//搜索
inttarget=5;
intresult=Array.BinarySearch(myArr,target);//4Console.WriteLine("{0}的下標(biāo)為{1}",target,result);//4
Console.ReadLine();}}}2023/2/483C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
(2)Contains方法Contains方法可以確定某個特定值的否包含在數(shù)組中,返回一個bool值。Array類的這個方法實(shí)際上是對IList接口中方法的實(shí)現(xiàn),常用形式如下:bool
IList.Contains(objectvalue);其中,參數(shù)value代表所要驗證的元素值。2023/2/484C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
【例7-4】判定學(xué)生數(shù)組arrSname中是否包含“趙六”。usingSystem;
namespaceContains{classContains{staticvoidMain(){//定義數(shù)組string[]arrSname={"大寶","張三","李四","趙六","趙二","麻子"};
2023/2/485C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
//判定是否含有某值stringtarget="趙六";
boolresult=
((System.Collections.IList)arrSname).Contains(target);
Console.WriteLine("包含{0}?{1}",target,result);//True}}}2023/2/486C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
7.把數(shù)組作為參數(shù)將數(shù)組作為參數(shù)傳遞可以將初始化的數(shù)組傳遞給方法。例如:int[]myArray=newint[]{1,3,5,7,9};PrintArray(myArray);也可以直接將一個初始化過的數(shù)組作為參數(shù)進(jìn)行傳遞。例如下面的代碼等價于上面數(shù)組傳遞。PrintArray(newint[]{1,3,5,7,9});2023/2/487C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
【例7-5】演示把一個初始化后字符串?dāng)?shù)組作為參數(shù)傳遞給PrintArray方法。usingSystem;
namespaceParameter{classParameter{staticvoidPrintArray(string[]strArr){for(inti=0;i<strArr.Length;i++)Console.Write("{0}",strArr[i]);
Console.WriteLine();}2023/2/488C#程序設(shè)計實(shí)用教程
7.2.3一維數(shù)組
staticvoidMain(){string[]WeekDays=newstring[]{"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
PrintArray(WeekDays);//把數(shù)組作為參數(shù)}}}在上面的例子中,主函數(shù)Main把定義好的數(shù)組WeekDays作為參數(shù)傳遞給方法PrintArray,PrintArray方法把接收到的數(shù)組元素一個個地打印出來。2023/2/489C#程序設(shè)計實(shí)用教程
7.2.4二維數(shù)組
在C#中,多維數(shù)組可看作是數(shù)組的數(shù)組,即高維數(shù)組。多維數(shù)組中的每一個元素本身也是一個低維數(shù)組,因此多維數(shù)組的定義、初始化和元素訪問與一維數(shù)組都非常相似。在多維數(shù)組中,二維數(shù)組是最簡單也是最常用的數(shù)組,本節(jié)主要介紹二維數(shù)組。2023/2/490C#程序設(shè)計實(shí)用教程
7.2.4二維數(shù)組
1.二維數(shù)組的定義二維數(shù)組的一般語法格式如下:
數(shù)據(jù)類型[,]數(shù)組名其中數(shù)據(jù)類型為數(shù)組中元素的類型,可以是前面定義的各種數(shù)據(jù)類型;數(shù)組名可以是C#中合法的標(biāo)識符;數(shù)組的每一維是用逗號隔開的。例如:char[,]charArr;//定義一個字符型二維數(shù)組int[,]intArr;//定義一個整型二維數(shù)組2023/2/491C#程序設(shè)計實(shí)用教程
7.2.4二維數(shù)組
定義多維數(shù)組與二維數(shù)組的方法相同,只是要根據(jù)定義數(shù)組的維數(shù)確定方括號中的逗號的個數(shù),一般定義一個n(n≥2)維數(shù)組,需要的逗號個數(shù)是n-1。例如,下面語句定義的是一個三維數(shù)組: String[,,]stringArr;//定義一個字符串型三維數(shù)組2023/2/492C#程序設(shè)計實(shí)用教程
7.2.4二維數(shù)組
2.二維數(shù)組的初始化二維數(shù)組包括兩種初始化方法,即:動態(tài)初始化和靜態(tài)初始化。動態(tài)初始化二維數(shù)組的格式如下:
數(shù)組名=new數(shù)據(jù)類型[數(shù)組長度1,數(shù)組長度2];其中,數(shù)組長度1和數(shù)組長度2可以是整型的常量或變量,它們分別表示數(shù)組第一維和第二維的長度。2023/2/493C#程序設(shè)計實(shí)用教程
7.2.4二維數(shù)組
也可以將二維數(shù)組的定義與動態(tài)初始化合并在一條語句中,格式如下:
數(shù)據(jù)類型[,]數(shù)組名=new數(shù)據(jù)類型[數(shù)組長度1,數(shù)組長度2];例如:
int[,]intArr=newint[3,2];上例中new運(yùn)算符用于創(chuàng)建數(shù)組,并默認(rèn)對數(shù)組元素進(jìn)行初始化。在上例中,所有數(shù)組元素的值都被初始化為0。2023/2/494C#程序設(shè)計實(shí)用教程
7.2.4二維數(shù)組
上面的語句定義一個二維數(shù)組,其中第1維的長度為3,第2維的長度為2。在二維數(shù)組中,第1維常常稱為行,第2維也稱為列。這樣,一個二維數(shù)組就同一個二維表格相對應(yīng)起來了。可以這樣理解二維數(shù)組:如果只給出二維數(shù)組的第1維下標(biāo),以一維數(shù)組來看二維數(shù)組,則這樣的數(shù)組中所代表的是另一個一維數(shù)組。2023/2/495C#程序設(shè)計實(shí)用教程
7.2.4二維數(shù)組
在動態(tài)初始化二維數(shù)組時,也可以直接為其賦予初始化值,如下所示:
int[,]intArr=newint[,]{{1,2},{3,4},{5,6}};它表示的數(shù)組元素的值如表7-2所示。2023/2/496C#程序設(shè)計實(shí)用教程
7.2.4二維數(shù)組
二維數(shù)組可以進(jìn)行靜態(tài)初始化。例如,下面的語句定義一個2行3列的double類型二維數(shù)組,并對其進(jìn)行靜態(tài)初始化。 double[,]doubleArr={{1.2,2.3,3.4},{4.5,5.6,6.7}};靜態(tài)初始化二維數(shù)組時,也必須與數(shù)組定義結(jié)合在一條語句中,否則程序就會報錯。而動態(tài)初始化數(shù)組時,它們可以分開在不同的語句中。2023/2/497C#程序設(shè)計實(shí)用教程
7.2.4二維數(shù)組
3.訪問二維數(shù)組的元素二維數(shù)組也是通過數(shù)組名和下標(biāo)值來訪問數(shù)組元素的,二維數(shù)組的下標(biāo)值也是從0開始的。與一維數(shù)組不同的是,二維數(shù)組需要兩個下標(biāo)才能唯一標(biāo)識一個數(shù)組元素,其中第1個下標(biāo)該元素所在的行,第2個下標(biāo)表示該元素所在的列。如intArr[2,0]代表數(shù)組名為intArr的二維數(shù)組中位于第3行、第1列的元素。根據(jù)二維數(shù)組的特點(diǎn),訪問二維數(shù)組中的元素通常需要一個二重循環(huán)。2023/2/498C#程序設(shè)計實(shí)用教程
7.2.4二維數(shù)組
【例7-6】通過二重循環(huán),將1到16的數(shù)賦給二維數(shù)組,然后顯示數(shù)組的內(nèi)容。程序代碼如下:usingSystem;
namespaceTwoArr{classTwoArr{staticvoidMain(){
inti,j;2023/2/499C#程序設(shè)計實(shí)用教程
7.2.4二維數(shù)組
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 吊車協(xié)議書參考
- 個人汽車買賣協(xié)議模板
- 闌尾切除術(shù)病因介紹
- 中考政治拓展提升篇知識梳理
- (2024)某鎮(zhèn)解決污染水項目可行性研究報告(一)
- 重慶2020-2024年中考英語5年真題回-學(xué)生版-專題10 書面表達(dá)
- 典型設(shè)備管理舉例- 隋向30課件講解
- 云南省保山市智源初級中學(xué)2024-2025學(xué)年九年級上學(xué)期12月月考?xì)v史試卷-A4
- 山東省東營市廣饒縣樂安中學(xué)2024-2025學(xué)年八年級上學(xué)期12月月考化學(xué)試題-A4
- 2023年藥品包裝機(jī)械項目籌資方案
- 卡通繪本愚公移山成語故事寓意故事PPT
- 營胡西山隧道出口二襯臺車拆卸方案
- 電工材料公司年經(jīng)營優(yōu)質(zhì)企劃書
- 醫(yī)囑執(zhí)行查對記錄本
- 道家符圖地結(jié)構(gòu)與原理
- 零星修繕工程合同范本3篇 維修零星工程合同范本
- 新人教版三年級上冊數(shù)學(xué) 總復(fù)習(xí) 教學(xué)課件
- 耳鼻咽喉科臨床診療指南
- (二)防觸電技術(shù)
- 實(shí)訓(xùn)報告---配置-Hyper-V-服務(wù)實(shí)訓(xùn)
- 場發(fā)射掃描電鏡介紹
評論
0/150
提交評論