javaswitch循環(huán)-java基礎(chǔ):switch語句應(yīng)用,循環(huán)的詳細(xì)介紹以及使用,附練習(xí)案列_第1頁
javaswitch循環(huán)-java基礎(chǔ):switch語句應(yīng)用,循環(huán)的詳細(xì)介紹以及使用,附練習(xí)案列_第2頁
javaswitch循環(huán)-java基礎(chǔ):switch語句應(yīng)用,循環(huán)的詳細(xì)介紹以及使用,附練習(xí)案列_第3頁
javaswitch循環(huán)-java基礎(chǔ):switch語句應(yīng)用,循環(huán)的詳細(xì)介紹以及使用,附練習(xí)案列_第4頁
javaswitch循環(huán)-java基礎(chǔ):switch語句應(yīng)用,循環(huán)的詳細(xì)介紹以及使用,附練習(xí)案列_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

javaswitch循環(huán)_java基礎(chǔ):switch語句應(yīng)?,循環(huán)的詳細(xì)介紹以及使?,附練習(xí)案列1.switch語句1.1分?語句switch語句格式switch(表達(dá)式){case1:語句體1;break;case2:語句體2;break;...default:語句體n+1;break;}執(zhí)?流程:?先計(jì)算出表達(dá)式的值其次,和case依次?較,?旦有對應(yīng)的值,就會執(zhí)?相應(yīng)的語句,在執(zhí)?的過程中,遇到break就會結(jié)束。最后,如果所有的case都和表達(dá)式的值不匹配,就會執(zhí)?default語句體部分,然后程序結(jié)束掉。1.2switch案例-減肥計(jì)劃需求:鍵盤錄?星期數(shù),顯?今天的減肥活動周?:跑步周?:游泳周三:慢?周四:動感單車周五:拳擊周六:爬?周?:好好吃?頓?例代碼:publicstaticvoidmain(String[]args){//1.鍵盤錄?星期數(shù)據(jù),使?變量接收Scannersc=newScanner(System.in);System.out.println("請輸?");intweek=sc.nextInt();//2.多情況判斷,采?switch語句實(shí)現(xiàn)switch(week){//3.在不同的case中,輸出對應(yīng)的減肥計(jì)劃case1:System.out.println("跑步");break;case2:System.out.println("游泳");break;case3:System.out.println("慢?");break;System.out.println("動感單車");break;case5:System.out.println("拳擊");break;case6:System.out.println("爬?");break;case7:System.out.println("好好吃?頓");break;default:System.out.println("您的輸?有誤");break;}}}1.3switch語句case穿透概述:如果switch語句中,case省略了break語句,就會開始case穿透需求:鍵盤錄?星期數(shù),輸出?作?、休息?(1-5)?作?,(6-7)休息??例代碼:/*case穿透是如何產(chǎn)?的?如果switch語句中,case省略了break語句,就會開始case穿透.現(xiàn)象:當(dāng)開始case穿透,后續(xù)的case就不會具有匹配效果,內(nèi)部的語句都會執(zhí)?直到看見break,或者將整體switch語句執(zhí)?完畢,才會結(jié)束。*/publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.println("請輸?星期數(shù):");intweek=sc.nextInt();switch(week){case2:case3:case4:case5:System.out.println("?作?");break;case6:case7:System.out.println("休息?");break;default:System.out.println("您的輸?有誤");break;}}}2.for循環(huán)2.1循環(huán)語句-for循環(huán)循環(huán):循環(huán)語句可以在滿?循環(huán)條件的情況下,反復(fù)執(zhí)?某?段代碼,這段被重復(fù)執(zhí)?的代碼被稱為循環(huán)體語句,當(dāng)反復(fù)執(zhí)?這個(gè)循環(huán)體時(shí),需要在合適的時(shí)候把循環(huán)判斷條件修改為false,從?結(jié)束循環(huán),否則循環(huán)將?直執(zhí)?下去,形成死循環(huán)。for循環(huán)格式:for(初始化語句;條件判斷語句;條件控制語句){循環(huán)體語句;}格式解釋:初始化語句:?于表?循環(huán)開啟時(shí)的起始狀態(tài),簡單說就是循環(huán)開始的時(shí)候什么樣條件判斷語句:?于表?循環(huán)反復(fù)執(zhí)?的條件,簡單說就是判斷循環(huán)是否能?直執(zhí)?下去循環(huán)體語句:?于表?循環(huán)反復(fù)執(zhí)?的內(nèi)容,簡單說就是循環(huán)反復(fù)執(zhí)?的事情條件控制語句:?于表?循環(huán)執(zhí)?中每次變化的內(nèi)容,簡單說就是控制循環(huán)是否能執(zhí)?下去執(zhí)?流程:①執(zhí)?初始化語句②執(zhí)?條件判斷語句,看其結(jié)果是true還是false如果是false,循環(huán)結(jié)束如果是true,繼續(xù)執(zhí)?③執(zhí)?循環(huán)體語句④執(zhí)?條件控制語句⑤回到②繼續(xù)2.2for循環(huán)案例-輸出數(shù)據(jù)1-5和5-1需求:在控制臺輸出1-5和5-1的數(shù)據(jù)?例代碼:publicclassForTest01{publicstaticvoidmain(String[]args){//需求:輸出數(shù)據(jù)1-5for(inti=1;i<=5;i++){System.out.println(i);}System.out.println("--------");//需求:輸出數(shù)據(jù)5-1for(inti=5;i>=1;i--){System.out.println(i);}}}2.3for循環(huán)案例-求1-5數(shù)據(jù)和需求:求1-5之間的數(shù)據(jù)和,并把求和結(jié)果在控制臺輸出?例代碼:publicclassForTest02{publicstaticvoidmain(String[]args){//求和的最終結(jié)果必須保存起來,需要定義?個(gè)變量,?于保存求和的結(jié)果,初始值為0intsum=0;//從1開始到5結(jié)束的數(shù)據(jù),使?循環(huán)結(jié)構(gòu)完成for(inti=1;i<=5;i++){//將反復(fù)進(jìn)?的事情寫?循環(huán)結(jié)構(gòu)內(nèi)部//此處反復(fù)進(jìn)?的事情是將數(shù)據(jù)i加到?于保存最終求和的變量sum中sum+=i;/*sum+=i;sum=sum+i;第?次:sum=sum+i=0+1=1;第?次:sum=sum+i=1+2=3;第三次:sum=sum+i=3+3=6;第四次:sum=sum+i=6+4=10;第五次:sum=sum+i=10+5=15;*/}//當(dāng)循環(huán)執(zhí)?完畢時(shí),將最終數(shù)據(jù)打印出來System.out.println("1-5之間的數(shù)據(jù)和是:"+sum);}}本題要點(diǎn):今后遇到的需求中,如果帶有求和?字,請?即聯(lián)想到求和變量求和變量的定義位置,必須在循環(huán)外部,如果在循環(huán)內(nèi)部則計(jì)算出的數(shù)據(jù)將是錯(cuò)誤的2.4for循環(huán)案例-求1-100偶數(shù)和需求:求1-100之間的偶數(shù)和,并把求和結(jié)果在控制臺輸出}?例代碼:publicclassForTest03{publicstaticvoidmain(String[]args){//求和的最終結(jié)果必須保存起來,需要定義?個(gè)變量,?于保存求和的結(jié)果,初始值為0intsum=0;//對1-100的數(shù)據(jù)求和與1-5的數(shù)據(jù)求和?乎完全?樣,僅僅是結(jié)束條件不同for(inti=1;i<=100;i++){//對1-100的偶數(shù)求和,需要對求和操作添加限制條件,判斷是否是偶數(shù)if(i%2==0){sum+=i;}}//當(dāng)循環(huán)執(zhí)?完畢時(shí),將最終數(shù)據(jù)打印出來System.out.println("1-100之間的偶數(shù)和是:"+sum);}}2.5for循環(huán)案例-?仙花數(shù)需求:在控制臺輸出所有的“?仙花數(shù)”解釋:什么是?仙花數(shù)??仙花數(shù),指的是?個(gè)三位數(shù),個(gè)位、?位、百位的數(shù)字??和等于原數(shù)例如1533*3*3+5*5*5+1*1*1=153思路:獲取所有的三位數(shù),準(zhǔn)備進(jìn)?篩選,最?的三位數(shù)為100,最?的三位數(shù)為999,使?for循環(huán)獲取獲取每?個(gè)三位數(shù)的個(gè)位,?位,百位,做if語句判斷是否是?仙花數(shù)?例代碼publicclassForTest04{publicstaticvoidmain(String[]args){//輸出所有的?仙花數(shù)必然要使?到循環(huán),遍歷所有的三位數(shù),三位數(shù)從100開始,到999結(jié)束for(inti=100;i<1000;i++){//在計(jì)算之前獲取三位數(shù)中每個(gè)位上的值intge=i%10;intshi=i/10%10;intbai=i/10/10%10;//判定條件是將三位數(shù)中的每個(gè)數(shù)值取出來,計(jì)算??和后與原始數(shù)字?較是否相等if(ge*ge*ge+shi*shi*shi+bai*bai*bai==i){//輸出滿?條件的數(shù)字就是?仙花數(shù)System.out.println(i);}}}}2.6for循環(huán)案例-每?打印2個(gè)?仙花數(shù)(統(tǒng)計(jì))需求:在控制臺輸出所有的“?仙花數(shù)”,要求每?打印2個(gè)?例代碼:publicclassDemo6For{/*需求:在控制臺輸出所有的“?仙花數(shù)”,要求每?打印2個(gè)System.out.print(打印內(nèi)容);打印后不換?System.out.println(打印內(nèi)容);打印后換?分析:1.定義變量count,?于保存“打印過”的數(shù)量,初始值為02.在判定和打印?仙花數(shù)的過程中,拼接空格,但不換?,并在打印后讓count變量+1,記錄打印過的數(shù)量3.在每?次count變量+1后,判斷是否到達(dá)了2的倍數(shù),是的話,換?。*/publicstaticvoidmain(String[]args){//1.定義變量count,?于保存“打印過”的數(shù)量,初始值為0intcount=0;for(inti=100;i<=999;i++){intge=i%10;intshi=i/10%10;intbai=i/10/10%10;if((ge*ge*ge+shi*shi*shi+bai*bai*bai)==i){//2.在判定和打印?仙花數(shù)的過程中,拼接空格,但不換?,并在打印后讓count變量+1,記錄打印過的數(shù)量System.out.print(i+"");count++;//3.在每?次count變量+1后,判斷是否到達(dá)了2的倍數(shù),是的話,換?if(count%2==0){System.out.println();}}}}}?while循環(huán),打印?仙花數(shù),并分兩?打印while的i++放的位置理解:i++放在循環(huán)語句中最前?:會先進(jìn)?加?操作,然后在執(zhí)?其他代碼,也就是會從101開始取值i++放到循環(huán)中其他語句后?:會運(yùn)?完其他取值及判斷之后在進(jìn)?加?操作,相當(dāng)于從100開始進(jìn)?取值,i++不可以放到循環(huán)的外?;原因:因?yàn)閖ava程序是按順序?次執(zhí)?代碼的packagecom.heima.Test03;publicclassdemo04publicstaticvoidmain(String[]args){//1.創(chuàng)建主?法intcoune=0;//9.定義?個(gè)變量,?于記錄控制臺打印次數(shù)inti=100;//2.?while循環(huán)獲取所有三位數(shù),定義起始值為100,System.out.println("?仙花數(shù)為:");while(i<1000){//3.循環(huán)的最?次數(shù)為?于1000,這樣相當(dāng)于獲取的值為從起始值100-999所有值intge=i%10;//4.求出這個(gè)三位數(shù)的個(gè)位數(shù)字;intshi=i/10%10;//5.求出這個(gè)三位數(shù)的?位數(shù)字;intbai=i/10/10%10;//6.求出這個(gè)三位數(shù)的百位數(shù)字;if(ge*ge*ge+shi*shi*shi+bai*bai*bai==i){//7.判斷這個(gè)數(shù)的是否為?仙花數(shù)System.out.print(i+"");//8.打印?仙花數(shù),為了達(dá)到要求我們需要不換?打印并且在每次輸出?仙花是時(shí)候后?拼接?個(gè)空格coune++;//10.每?次進(jìn)?打印,我們讓coune進(jìn)?+1,達(dá)到計(jì)數(shù)效果if(coune%2==0){//?if判斷打印是否為兩次//如果打印了兩次進(jìn)??次以下操作System.out.println();//這句話是換?的意思}}i++;//每執(zhí)?完?次循環(huán),讓i進(jìn)?++操作,直到i+到?千時(shí)候循環(huán)結(jié)束;}}}本題要點(diǎn):今后如果需求帶有統(tǒng)計(jì)xxx,請先想到計(jì)數(shù)器變量計(jì)數(shù)器變量定義的位置,必須在循環(huán)外部3.while循環(huán)3.1循環(huán)語句-while循環(huán)while循環(huán)完整格式:初始化語句;while(條件判斷語句){循環(huán)體語句;條件控制語句;}while循環(huán)執(zhí)?流程:①執(zhí)?初始化語句②執(zhí)?條件判斷語句,看其結(jié)果是true還是false如果是false,循環(huán)結(jié)束如果是true,繼續(xù)執(zhí)?③執(zhí)?循環(huán)體語句④執(zhí)?條件控制語句?例代碼:publicclassWhileDemo{publicstaticvoidmain(String[]args){//需求:在控制臺輸出5次"HelloWorld"http://for循環(huán)實(shí)現(xiàn)for(inti=1;i<=5;i++){System.out.println("HelloWorld");}System.out.println("--------");//while循環(huán)實(shí)現(xiàn)intj=1;while(j<=5){System.out.println("HelloWorld");j++;}}}3.2while循環(huán)案例-珠穆朗瑪峰需求:世界最??峰是珠穆朗瑪峰(8844.43?=8844430毫?),假如我有?張?夠?的紙,它的厚度是0.1毫?。請問,我折疊多少次,可以折成珠穆朗瑪峰的?度??例代碼:publicclassWhileTest{publicstaticvoidmain(String[]args){//定義?個(gè)計(jì)數(shù)器,初始值為0intcount=0;//定義紙張厚度doublepaper=0.1;//定義珠穆朗瑪峰的?度intzf=8844430;//因?yàn)橐磸?fù)折疊,所以要使?循環(huán),但是不知道折疊多少次,這種情況下更適合使?while循環(huán)//折疊的過程中當(dāng)紙張厚度?于珠峰就停?了,因此繼續(xù)執(zhí)?的要求是紙張厚度?于珠峰?度while(paper<=zf){//循環(huán)的執(zhí)?過程中每次紙張折疊,紙張的厚度要加倍//在循環(huán)中執(zhí)?累加,對應(yīng)折疊了多少次count++;}//打印計(jì)數(shù)器的值System.out.println("需要折疊:"+count+"次");}}4.循環(huán)細(xì)節(jié)4.1循環(huán)語句-dowhile循環(huán)完整格式:初始化語句;do{循環(huán)體語句;條件控制語句;}while(條件判斷語句);執(zhí)?流程:①執(zhí)?初始化語句②執(zhí)?循環(huán)體語句③執(zhí)?條件控制語句④執(zhí)?條件判斷語句,看其結(jié)果是true還是false如果是false,循環(huán)結(jié)束如果是true,繼續(xù)執(zhí)?⑤回到②繼續(xù)?例代碼:publicclassDoWhileDemo{publicstaticvoidmain(String[]args){//需求:在控制臺輸出5次"HelloWorld"http://for循環(huán)實(shí)現(xiàn)for(inti=1;i<=5;i++){System.out.println("HelloWorld");}System.out.println("--------");//do...while循環(huán)實(shí)現(xiàn)do{System.out.println("HelloWorld");j++;}while(j<=5);}}4.2三種循環(huán)的區(qū)別三種循環(huán)的區(qū)別for循環(huán)和while循環(huán)先判斷條件是否成?,然后決定是否執(zhí)?循環(huán)體(先判斷后執(zhí)?)do...while循環(huán)先執(zhí)??次循環(huán)體,然后判斷條件是否成?,是否繼續(xù)執(zhí)?循環(huán)體(先執(zhí)?后判斷)for循環(huán)和while的區(qū)別條件控制語句所控制的?增變量,因?yàn)闅w屬for循環(huán)的語法結(jié)構(gòu)中,在for循環(huán)結(jié)束后,就不能再次被訪問到了條件控制語句所控制的?增變量,對于while循環(huán)來說不歸屬其語法結(jié)構(gòu)中,在while循環(huán)結(jié)束后,該變量還可以繼續(xù)使?死循環(huán)(?限循環(huán))的三種格式for(;;){}while(true){}do{}while(true);4.3死循環(huán)死循環(huán)格式for死循環(huán)格式:for(;;){}while死循環(huán)格式:while(true){}do..while死循環(huán)格式:do{}while(true);死循環(huán)案例/*問題:死循環(huán)有應(yīng)?場景嗎?例如:鍵盤錄??個(gè)1-100之間的整數(shù)顧慮:鍵盤錄?是?戶操作的,?戶就可能會出現(xiàn)?些誤操作的現(xiàn)象*/publicstaticvoidmain(String[]args){/*for(;;){System.out.println("我停不下來了~");}*//*while(true){System.out.println("我停不下來了~");}*/do{System.out.println("我停不下來了~");}while(true);System.out.println("看看我能被執(zhí)?嗎?~");//?法訪問的語句}}4.4跳轉(zhuǎn)控制語句跳轉(zhuǎn)控制語句(break)跳出循環(huán),結(jié)束循環(huán)跳轉(zhuǎn)控制語句(continue)跳過本次循環(huán),繼續(xù)下次循環(huán)注意:continue只能在循環(huán)中進(jìn)?使?!publicclassDemo1Continue{/*continue:跳過某次循環(huán)體內(nèi)容的執(zhí)?注意:使?是基于條件控制,在循環(huán)內(nèi)部使?.需求:模擬電梯上?的過程1-24層,4層不停.*/publicstaticvoidmain(String[]args){for(inti=1;i<=24;i++){if(i==4){continue;}System.out.println(i+"層到了~");}}}publicclassDemo2B

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論