




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
javaswitch循環(huán)_java基礎:switch語句應?,循環(huán)的詳細介紹以及使?,附練習案列1.switch語句1.1分?語句switch語句格式switch(表達式){case1:語句體1;break;case2:語句體2;break;...default:語句體n+1;break;}執(zhí)?流程:?先計算出表達式的值其次,和case依次?較,?旦有對應的值,就會執(zhí)?相應的語句,在執(zhí)?的過程中,遇到break就會結束。最后,如果所有的case都和表達式的值不匹配,就會執(zhí)?default語句體部分,然后程序結束掉。1.2switch案例-減肥計劃需求:鍵盤錄?星期數(shù),顯?今天的減肥活動周?:跑步周?:游泳周三:慢?周四:動感單車周五:拳擊周六:爬?周?:好好吃?頓?例代碼:publicstaticvoidmain(String[]args){//1.鍵盤錄?星期數(shù)據(jù),使?變量接收Scannersc=newScanner(System.in);System.out.println("請輸?");intweek=sc.nextInt();//2.多情況判斷,采?switch語句實現(xiàn)switch(week){//3.在不同的case中,輸出對應的減肥計劃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穿透是如何產?的?如果switch語句中,case省略了break語句,就會開始case穿透.現(xiàn)象:當開始case穿透,后續(xù)的case就不會具有匹配效果,內部的語句都會執(zhí)?直到看見break,或者將整體switch語句執(zhí)?完畢,才會結束。*/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)條件的情況下,反復執(zhí)?某?段代碼,這段被重復執(zhí)?的代碼被稱為循環(huán)體語句,當反復執(zhí)?這個循環(huán)體時,需要在合適的時候把循環(huán)判斷條件修改為false,從?結束循環(huán),否則循環(huán)將?直執(zhí)?下去,形成死循環(huán)。for循環(huán)格式:for(初始化語句;條件判斷語句;條件控制語句){循環(huán)體語句;}格式解釋:初始化語句:?于表?循環(huán)開啟時的起始狀態(tài),簡單說就是循環(huán)開始的時候什么樣條件判斷語句:?于表?循環(huán)反復執(zhí)?的條件,簡單說就是判斷循環(huán)是否能?直執(zhí)?下去循環(huán)體語句:?于表?循環(huán)反復執(zhí)?的內容,簡單說就是循環(huán)反復執(zhí)?的事情條件控制語句:?于表?循環(huán)執(zhí)?中每次變化的內容,簡單說就是控制循環(huán)是否能執(zhí)?下去執(zhí)?流程:①執(zhí)?初始化語句②執(zhí)?條件判斷語句,看其結果是true還是false如果是false,循環(huán)結束如果是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ù)和,并把求和結果在控制臺輸出?例代碼:publicclassForTest02{publicstaticvoidmain(String[]args){//求和的最終結果必須保存起來,需要定義?個變量,?于保存求和的結果,初始值為0intsum=0;//從1開始到5結束的數(shù)據(jù),使?循環(huán)結構完成for(inti=1;i<=5;i++){//將反復進?的事情寫?循環(huá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;*/}//當循環(huán)執(zhí)?完畢時,將最終數(shù)據(jù)打印出來System.out.println("1-5之間的數(shù)據(jù)和是:"+sum);}}本題要點:今后遇到的需求中,如果帶有求和?字,請?即聯(lián)想到求和變量求和變量的定義位置,必須在循環(huán)外部,如果在循環(huán)內部則計算出的數(shù)據(jù)將是錯誤的2.4for循環(huán)案例-求1-100偶數(shù)和需求:求1-100之間的偶數(shù)和,并把求和結果在控制臺輸出}?例代碼:publicclassForTest03{publicstaticvoidmain(String[]args){//求和的最終結果必須保存起來,需要定義?個變量,?于保存求和的結果,初始值為0intsum=0;//對1-100的數(shù)據(jù)求和與1-5的數(shù)據(jù)求和?乎完全?樣,僅僅是結束條件不同for(inti=1;i<=100;i++){//對1-100的偶數(shù)求和,需要對求和操作添加限制條件,判斷是否是偶數(shù)if(i%2==0){sum+=i;}}//當循環(huán)執(zhí)?完畢時,將最終數(shù)據(jù)打印出來System.out.println("1-100之間的偶數(shù)和是:"+sum);}}2.5for循環(huán)案例-?仙花數(shù)需求:在控制臺輸出所有的“?仙花數(shù)”解釋:什么是?仙花數(shù)??仙花數(shù),指的是?個三位數(shù),個位、?位、百位的數(shù)字??和等于原數(shù)例如1533*3*3+5*5*5+1*1*1=153思路:獲取所有的三位數(shù),準備進?篩選,最?的三位數(shù)為100,最?的三位數(shù)為999,使?for循環(huán)獲取獲取每?個三位數(shù)的個位,?位,百位,做if語句判斷是否是?仙花數(shù)?例代碼publicclassForTest04{publicstaticvoidmain(String[]args){//輸出所有的?仙花數(shù)必然要使?到循環(huán),遍歷所有的三位數(shù),三位數(shù)從100開始,到999結束for(inti=100;i<1000;i++){//在計算之前獲取三位數(shù)中每個位上的值intge=i%10;intshi=i/10%10;intbai=i/10/10%10;//判定條件是將三位數(shù)中的每個數(shù)值取出來,計算??和后與原始數(shù)字?較是否相等if(ge*ge*ge+shi*shi*shi+bai*bai*bai==i){//輸出滿?條件的數(shù)字就是?仙花數(shù)System.out.println(i);}}}}2.6for循環(huán)案例-每?打印2個?仙花數(shù)(統(tǒng)計)需求:在控制臺輸出所有的“?仙花數(shù)”,要求每?打印2個?例代碼:publicclassDemo6For{/*需求:在控制臺輸出所有的“?仙花數(shù)”,要求每?打印2個System.out.print(打印內容);打印后不換?System.out.println(打印內容);打印后換?分析:1.定義變量count,?于保存“打印過”的數(shù)量,初始值為02.在判定和打印?仙花數(shù)的過程中,拼接空格,但不換?,并在打印后讓count變量+1,記錄打印過的數(shù)量3.在每?次count變量+1后,判斷是否到達了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后,判斷是否到達了2的倍數(shù),是的話,換?if(count%2==0){System.out.println();}}}}}?while循環(huán),打印?仙花數(shù),并分兩?打印while的i++放的位置理解:i++放在循環(huán)語句中最前?:會先進?加?操作,然后在執(zhí)?其他代碼,也就是會從101開始取值i++放到循環(huán)中其他語句后?:會運?完其他取值及判斷之后在進?加?操作,相當于從100開始進?取值,i++不可以放到循環(huán)的外?;原因:因為java程序是按順序?次執(zhí)?代碼的packagecom.heima.Test03;publicclassdemo04publicstaticvoidmain(String[]args){//1.創(chuàng)建主?法intcoune=0;//9.定義?個變量,?于記錄控制臺打印次數(shù)inti=100;//2.?while循環(huán)獲取所有三位數(shù),定義起始值為100,System.out.println("?仙花數(shù)為:");while(i<1000){//3.循環(huán)的最?次數(shù)為?于1000,這樣相當于獲取的值為從起始值100-999所有值intge=i%10;//4.求出這個三位數(shù)的個位數(shù)字;intshi=i/10%10;//5.求出這個三位數(shù)的?位數(shù)字;intbai=i/10/10%10;//6.求出這個三位數(shù)的百位數(shù)字;if(ge*ge*ge+shi*shi*shi+bai*bai*bai==i){//7.判斷這個數(shù)的是否為?仙花數(shù)System.out.print(i+"");//8.打印?仙花數(shù),為了達到要求我們需要不換?打印并且在每次輸出?仙花是時候后?拼接?個空格coune++;//10.每?次進?打印,我們讓coune進?+1,達到計數(shù)效果if(coune%2==0){//?if判斷打印是否為兩次//如果打印了兩次進??次以下操作System.out.println();//這句話是換?的意思}}i++;//每執(zhí)?完?次循環(huán),讓i進?++操作,直到i+到?千時候循環(huán)結束;}}}本題要點:今后如果需求帶有統(tǒng)計xxx,請先想到計數(shù)器變量計數(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í)?條件判斷語句,看其結果是true還是false如果是false,循環(huán)結束如果是true,繼續(xù)執(zhí)?③執(zhí)?循環(huán)體語句④執(zhí)?條件控制語句?例代碼:publicclassWhileDemo{publicstaticvoidmain(String[]args){//需求:在控制臺輸出5次"HelloWorld"http://for循環(huán)實現(xiàn)for(inti=1;i<=5;i++){System.out.println("HelloWorld");}System.out.println("--------");//while循環(huán)實現(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){//定義?個計數(shù)器,初始值為0intcount=0;//定義紙張厚度doublepaper=0.1;//定義珠穆朗瑪峰的?度intzf=8844430;//因為要反復折疊,所以要使?循環(huán),但是不知道折疊多少次,這種情況下更適合使?while循環(huán)//折疊的過程中當紙張厚度?于珠峰就停?了,因此繼續(xù)執(zhí)?的要求是紙張厚度?于珠峰?度while(paper<=zf){//循環(huán)的執(zhí)?過程中每次紙張折疊,紙張的厚度要加倍//在循環(huán)中執(zhí)?累加,對應折疊了多少次count++;}//打印計數(shù)器的值System.out.println("需要折疊:"+count+"次");}}4.循環(huán)細節(jié)4.1循環(huán)語句-dowhile循環(huán)完整格式:初始化語句;do{循環(huán)體語句;條件控制語句;}while(條件判斷語句);執(zhí)?流程:①執(zhí)?初始化語句②執(zhí)?循環(huán)體語句③執(zhí)?條件控制語句④執(zhí)?條件判斷語句,看其結果是true還是false如果是false,循環(huán)結束如果是true,繼續(xù)執(zhí)?⑤回到②繼續(xù)?例代碼:publicclassDoWhileDemo{publicstaticvoidmain(String[]args){//需求:在控制臺輸出5次"HelloWorld"http://for循環(huán)實現(xiàn)for(inti=1;i<=5;i++){System.out.println("HelloWorld");}System.out.println("--------");//do...while循環(huán)實現(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ū)別條件控制語句所控制的?增變量,因為歸屬for循環(huán)的語法結構中,在for循環(huán)結束后,就不能再次被訪問到了條件控制語句所控制的?增變量,對于while循環(huán)來說不歸屬其語法結構中,在while循環(huán)結束后,該變量還可以繼續(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)有應?場景嗎?例如:鍵盤錄??個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跳轉控制語句跳轉控制語句(break)跳出循環(huán),結束循環(huán)跳轉控制語句(continue)跳過本次循環(huán),繼續(xù)下次循環(huán)注意:continue只能在循環(huán)中進?使?!publicclassDemo1Continue{/*continue:跳過某次循環(huán)體內容的執(zhí)?注意:使?是基于條件控制,在循環(huán)內部使?.需求:模擬電梯上?的過程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)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)土地征收合同范例
- 傳媒臨時合同范例
- 管道廢除施工方案
- 農村小院征用合同范例
- 倉庫平房出售合同范例
- 鍍鋅鋼管埋地施工方案
- 公司承包土地合同范例
- 農機車合同范例
- 倉儲廠房建設合同范本
- 利用合同范例
- 2025年高考時事政治考點總結
- 2025年山西省運城市平陸縣部分學校中考一模道德與法治試題(原卷版+解析版)
- 縣國有企業(yè)改革轉型方案
- 高中家長會 高考考前家長會家長心理調整課件
- 2025年皖北衛(wèi)生職業(yè)學院單招職業(yè)適應性測試題庫附答案
- 住宅老舊電梯更新改造方案
- 2025年山東國電投萊陽核能有限公司校園招聘筆試參考題庫附帶答案詳解
- 《主題六 研學旅行我做主》教學設計-2023-2024學年六年級下冊綜合實踐活動遼師大版
- 電力工程建設中的風險控制與管理措施
- 中小學生開學第一課主題班會-以哪吒之魔童降世為榜樣
- 八年級北師大版上冊數(shù)學期中卷面分析
評論
0/150
提交評論