版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第四章開發(fā)語音
4.3.1流程控制語句我們現(xiàn)在所寫的程序代碼在執(zhí)行的過程中要按照一定的線性方向進(jìn)行執(zhí)行,這期間一定會(huì)有節(jié)點(diǎn)需要我們做判斷和分支的,而流程控制語句就是執(zhí)行這類作用的。4.3程序語言基礎(chǔ)1、if二叉分支語句if語句是我們的程序中最基本的語句,通常我們學(xué)習(xí)程序?qū)W習(xí)的第一個(gè)語句就是if語句。使用if語句是,在語句后面的括號(hào)中要跟隨一個(gè)條件表達(dá)式,這個(gè)條件表達(dá)式的結(jié)果如果是true,則執(zhí)行運(yùn)行{}中的內(nèi)容,如果是false則不執(zhí)行。if(布爾表達(dá)式){語句}if這個(gè)單詞的英文中是“如果”的意思,如上代碼的意思是如果條件為真,則執(zhí)行語句。4.3.1流程控制語句if(布爾表達(dá)式){語句A;}else{語句B;}if...else語句是if語句中最常用的一種形式,else的意思是“否則”,它根據(jù)條件的進(jìn)行分支處理,就是說如果表達(dá)式結(jié)果為true那么執(zhí)行語句A,否則則執(zhí)行語句B。4.3.1流程控制語句if(布爾表達(dá)式1){語句1;}elseif(布爾表達(dá)式2){語句2;}else{執(zhí)行語句n;}if...elseif是多重分支語句,此類語句用于解決多重分支,if和else每次只能就行二叉分支,當(dāng)布爾表達(dá)式1的值為true時(shí),執(zhí)行語句1,如果false,則進(jìn)行布爾表達(dá)式2的判斷,如果為true,則執(zhí)行語句2,為false則進(jìn)行下面的判斷或語句,以此類推。4.3.1流程控制語句
switch則是用來處理多分支的語句。它根據(jù)表達(dá)式的值使程序從多個(gè)分支中選擇一個(gè)用于執(zhí)行的分支,if語句是每次遇到條件就一分為二的兩種情況,Switch就是遇到條件一分為多。例子如下:switch(表達(dá)式){case常量表達(dá)式1:語句1;break;case常量表達(dá)式2:語句2;break;...case常量表達(dá)式3:語句3;break;default:語句4;}4.3.1流程控制語句
switch關(guān)鍵字后面的()中是條件表達(dá)式,條件表達(dá)式的結(jié)果必須是bool型的值,注意是結(jié)果,也就是可以是個(gè)算式,例如6>4,其結(jié)果是正確的,是true,也可以是一個(gè)返回值為bool方法。將方法調(diào)用放入小括號(hào)中也是可以的。大括號(hào){}中的代碼是由多個(gè)case子句組成的多個(gè)分支。每個(gè)case關(guān)鍵字后面都有對(duì)應(yīng)語句塊,switch所執(zhí)行的功能是通過對(duì)條件表達(dá)式的判讀,根據(jù)得出的值到下面的case語句中找到相同的值,然后執(zhí)行該值對(duì)應(yīng)的語句,語句執(zhí)行結(jié)束后,執(zhí)行break語句,break直接結(jié)束switch。default的意義是其他,如果條件表示式的值在case塊中沒有找到匹配的值,那么執(zhí)行default后面的語句。4.3.1流程控制語句
1.while語句while(條件表達(dá)式){語句1;}while在英文的意思“當(dāng)....時(shí)”,在程序語句中的表示的意思就是,當(dāng)條件表達(dá)式的值為true時(shí),就一直執(zhí)行語句1,直到條件表達(dá)式值為false才結(jié)束。從語句格式上我們發(fā)現(xiàn)while的語法結(jié)構(gòu)和if的結(jié)構(gòu)很像,但是表示意思略有區(qū)別,if是條件表達(dá)式為true,則執(zhí)行一次語句1,while則是一直執(zhí)行語句1。在這里我們橫向比較一下能加深對(duì)語句的記憶。4.3.2循環(huán)語句2.do...while循環(huán)do{語句1;}while(條件表達(dá)式);do...while語句的執(zhí)行順序是先執(zhí)行一次語句1,然后之后判斷while中的條件表達(dá)式,如果是true,則反復(fù)執(zhí)行語句1,如果是false,不再執(zhí)行語句1,結(jié)束循環(huán)。do...while語句與while語句的最大的區(qū)別是,while是判讀再執(zhí)行,如果為false,則語句一次也不執(zhí)行。而do...while是先執(zhí)行一次,再判斷為false,則不執(zhí)行,也就是說while可能一次也不執(zhí)行語句,而do...while至少會(huì)執(zhí)行一次語句。4.3.2循環(huán)語句3.for循環(huán)for循環(huán)是程序語言中最有用的循環(huán)語句之一,for循環(huán)用于對(duì)一個(gè)有序的數(shù)據(jù)序列進(jìn)行遍歷,其中有一個(gè)初始值,有一個(gè)條件值,有一個(gè)變化規(guī)律,這三個(gè)中用;分隔,各有各的用途,下面是for循環(huán)的語法結(jié)構(gòu)for(初始值;條件表達(dá)式;變化規(guī)律){語句1;}for的使用都針對(duì)一個(gè)數(shù)據(jù)序列的,初始值用來確定序列索引值,表明從序列的那個(gè)位置起始循環(huán)。條件表達(dá)式是一個(gè)bool表達(dá)式,用來判斷序列索引是否符合條件,如果索引不符合條件則結(jié)束循環(huán)。變化規(guī)律是指序列索引每次執(zhí)行后對(duì)索引值做怎樣的變化。值做怎樣的變化。4.3.2循環(huán)語句for(inti=0;i<3;i++){語句;}for語句的運(yùn)行順序如下:第一遍運(yùn)行的時(shí)候以索引初始值i=0,判讀條件,i=0,i<3,執(zhí)行語句1。執(zhí)行變化語句i++;也就是i自加1,此時(shí)i=1。第二遍i=1,判斷條件,i=1,i<3,執(zhí)行語句。i++,i=2。第三遍i=2,判斷條件,i=2,i<3,執(zhí)行語句。i++,i=3。第六遍i=3,判斷條件,i=3,i已經(jīng)不小于3了,條件不成立跳出循環(huán)。最終語句執(zhí)行3遍。4.3.2循環(huán)語句4.foreach循環(huán)foreach循環(huán)是for循環(huán)的一種特殊簡化方式。但foreach語句并不能完全取代for語句。然而foreach循環(huán)都可以改寫成for循環(huán)。foreach語句用于枚舉一個(gè)集合的內(nèi)容。用一個(gè)變量分別代替對(duì)該集合中的每個(gè)元素,用于對(duì)元素的調(diào)用的操作,foreach語句不能用于執(zhí)行更改集合元素的操作,否則會(huì)產(chǎn)生錯(cuò)誤。foreach(變量類型變量in集合){語句;}要注意的是變量類型要和后面集合的類型保持一致,變量在每一次循環(huán)中分別代表集合中的一個(gè)元素,循環(huán)的次數(shù)和集合的個(gè)數(shù)是一致的。4.3.2循環(huán)語句5.循環(huán)跳轉(zhuǎn)語句(1)break語句,break語句只能應(yīng)用在switch、while、do...while,for、foreach語句中,用于結(jié)束循環(huán)語句。(2)continue語句只能用于while、do...while,for、foreach語句中,用來忽略循環(huán)語句中當(dāng)次循環(huán),而開始下一次的循環(huán)。(3)return語句表示返回,當(dāng)return語句在方法中的時(shí)候,用于結(jié)束當(dāng)前方法。如果當(dāng)前方法有返回值,則該方法必須有return方法,且必須每個(gè)分支都由return來結(jié)束,并且return后面需要有和方法返回類型相同的值。4.3.2循環(huán)語句
集合是一些數(shù)據(jù)所組成的序列。在C#中有很多種數(shù)據(jù)集合方式。我們這里主要講數(shù)組。
數(shù)組元素的下標(biāo)、索引或者ID;
數(shù)組的長度;為了更好的理解數(shù)組,可以數(shù)組想象成軍隊(duì)的站隊(duì),一維數(shù)組就是一路隊(duì)列,二維數(shù)組就是二路隊(duì)列,可以通過報(bào)數(shù)的形式遍歷每個(gè)隊(duì)員,也可以通過序號(hào),直接找到序號(hào)對(duì)應(yīng)的隊(duì)員。4.3.3集合和數(shù)組
1.一維數(shù)組一維數(shù)組實(shí)際上就是一個(gè)線性的數(shù)據(jù)集合,當(dāng)程序中需要處理一組數(shù)據(jù)時(shí)就可以創(chuàng)建一個(gè)這種數(shù)據(jù)類型的數(shù)組。數(shù)組的定義可以使用一下幾種方式①數(shù)組類型[]數(shù)組名;②數(shù)組類型[]數(shù)組名=new數(shù)組類型[數(shù)組長度];③數(shù)組類型[]數(shù)組名={元素1,元素2,元素3,元素4};④數(shù)組類型[]數(shù)組名=new數(shù)組類型[3]{元素1,元素2,元素3};4.3.3集合和數(shù)組
①方法是最簡潔的定義方式,僅僅定義數(shù)組的類型和數(shù)組的名字。例如int[]nums;這就是定義了一個(gè)整數(shù)型數(shù)組,數(shù)組名叫nums。
②方法是在定義數(shù)組類型和名字的同時(shí)給出的數(shù)組的長度。例如int[]nums=newint[4];這表示定義了一個(gè)長度為4的整數(shù)型數(shù)組,名字叫nums。
4.3.3集合和數(shù)組
③方法是在定義數(shù)組類型和名字的同時(shí),數(shù)組的元素賦值。這種方式雖然沒有直接給出數(shù)組的長度,但是通過元素的個(gè)數(shù)也是能知道數(shù)組的長度的,也相當(dāng)于變相的給出了數(shù)組長度。例如int[]nums={3,4,6,4,6,1};這表示定義了一個(gè)整數(shù)型數(shù)組,數(shù)組的元素分別是3,4,6,4,6,1,數(shù)組長度為6,名字是nums。④方法是最完整的數(shù)組定義方式,例如int[]nums=newint[6]{3,4,6,4,6,1};4.3.3集合和數(shù)組
2.二維數(shù)組①int[,]nums;②int[][]n;③int[,]nums=newint[2,4];④int[,]nums=newint[2,4]{{3,4},{4,5},{4,5},{2,6}};⑤int[,]nums={{3,4},{4,5},{4,5},{2,6}};4.3.3集合和數(shù)組
3.常用數(shù)組命令(1)Sort排序Sort命令是Array類下的一個(gè)靜態(tài)方法,作用是可以把數(shù)組內(nèi)的元素按照由小到大的順序進(jìn)行排序。使用方法如下:int[]list={3,5,7,6,8};Array.Sort(list);foreach(intiinlist){Console.Write(i+“;”);}4.3.3集合和數(shù)組(2)Reverse反轉(zhuǎn)Reverse命令是Array類下的一個(gè)靜態(tài)方法,作用是將數(shù)組內(nèi)的元素反向排列。使用方法如下:int[]list={3,5,7,6,8};Array.Reverse(list);foreach(intiinlist){Console.Write(i+“;”);}4.3.3集合和數(shù)組屬性是一種用于訪問對(duì)象或類的特性的成員,從使用上也可以按變量的方式使用,是一種可以進(jìn)行訪問限制的變量,可以對(duì)訪問性進(jìn)行設(shè)置。訪問修飾符數(shù)據(jù)類型屬性名{get{return變量名;}set{變量名=value;}}4.3.4屬性屬性是一種用于訪問對(duì)象或類的特性的成員,從使用上也可以按變量intMonth=12;publicintmonth{get{returnMonth;}set{if(value>0&&value<13){Month=value;}}}4.3.4屬性intMonth=12;publicintmonth{get{returnMonth;}}上面這個(gè)屬性的定義沒有set也就無法進(jìn)行賦值,這個(gè)屬性就是一個(gè)可讀屬性,無法對(duì)屬性的數(shù)值進(jìn)行修改。4.3.4屬性
在一個(gè)項(xiàng)目中會(huì)存在大量的類,有些類實(shí)現(xiàn)的功能不同,但很類似,這就是使程序中出現(xiàn)了大量重復(fù)的代碼,為了避免出現(xiàn)這樣問題,就有了對(duì)象這個(gè)概念。
什么是類?什么是對(duì)象?4.3.5對(duì)象對(duì)象的定義對(duì)象的定義,分為兩部分,一是聲明對(duì)象,也就是確定對(duì)象的類型和名字,二是實(shí)例化對(duì)象。(1)聲明對(duì)象:聲明變量是一樣的要符合變量命名的規(guī)則,假定我們已經(jīng)有了一個(gè)叫Fruit的類,下面就聲明了一個(gè)Fruit的類的對(duì)象fruit。代碼如下:Fruitfruit;從上面的代碼中我們可以看出,這和聲明變量是一樣的,但是變量類型是我們自己定義的各種類。4.3.5對(duì)象(2)實(shí)例化對(duì)象:聲明對(duì)象后,該對(duì)象并不能直接訪問,因?yàn)橄到y(tǒng)中還未為其分配存儲(chǔ)空間和值,只有通過實(shí)例化,相當(dāng)于為變量賦初始值,才能真正完成定義。Fruitfruit=newFruit();如上代碼這才完成了對(duì)對(duì)象的定義。
我們定義的對(duì)象是不是就是在定義變量。我們用的都是引用類型,需要有具體的實(shí)例話,才能完成空間分配。變量在某種意義上說都是一種
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 高中語文統(tǒng)編版(部編版)必修 上冊(cè)第六單元12《拿來主義》課堂實(shí)錄
- 快手電商2025版網(wǎng)紅直播帶貨合作合同范本3篇
- 2025版民爆物品裝卸作業(yè)安全評(píng)估與認(rèn)證合同4篇
- 鄭州美術(shù)學(xué)院《互動(dòng)光媒與空間》2023-2024學(xué)年第一學(xué)期期末試卷
- 正德職業(yè)技術(shù)學(xué)院《中國古代文學(xué)(2)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年度倉庫倉儲(chǔ)設(shè)施維修與保養(yǎng)合同3篇
- 2025版專業(yè)體驗(yàn)館消防安裝人工費(fèi)用結(jié)算合同3篇
- 2024影視制作合同制作內(nèi)容補(bǔ)充協(xié)議
- 2025年度商鋪?zhàn)赓U合同租賃期滿資產(chǎn)返還與驗(yàn)收標(biāo)準(zhǔn)4篇
- 2025版雙向轉(zhuǎn)診醫(yī)療服務(wù)績效考核合同3篇
- 《電影之創(chuàng)戰(zhàn)紀(jì)》課件
- 社區(qū)醫(yī)療抗菌藥物分級(jí)管理方案
- 開題報(bào)告-鑄牢中華民族共同體意識(shí)的學(xué)校教育研究
- 《醫(yī)院標(biāo)識(shí)牌規(guī)劃設(shè)計(jì)方案》
- 夜市運(yùn)營投標(biāo)方案(技術(shù)方案)
- (高清版)DZT 0282-2015 水文地質(zhì)調(diào)查規(guī)范(1:50000)
- 《紅樓夢(mèng)》禮儀研究
- 會(huì)議分組討論主持詞
- 動(dòng)火作業(yè)審批表
- 新能源汽車火災(zāi)事故處置程序及方法
- 教學(xué)查房及體格檢查評(píng)分標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論