java基礎(chǔ)預(yù)熱講義_第1頁
java基礎(chǔ)預(yù)熱講義_第2頁
java基礎(chǔ)預(yù)熱講義_第3頁
java基礎(chǔ)預(yù)熱講義_第4頁
java基礎(chǔ)預(yù)熱講義_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

北京傳智播客教育Java預(yù)熱班講義講師:焦寧波北京傳智播客教育程序流程控制每一種高級(jí)語言都會(huì)有語句,讓計(jì)算機(jī)做一些更為復(fù)雜的事情,只不過表現(xiàn)形式不同。順序語句判斷語句選擇語句循環(huán)語句北京傳智播客教育Tip1:判斷語句if語句三種格式:if(條件表達(dá)式) {

執(zhí)行語句;

}if(條件表達(dá)式) {

執(zhí)行語句;

} else {

執(zhí)行語句;

}if(條件表達(dá)式) {

執(zhí)行語句;

} elseif(條件表達(dá)式) {

執(zhí)行語句;

} …… else {

執(zhí)行語句;

}北京傳智播客教育Tip1:if語句使用細(xì)節(jié)使用if語句時(shí)要注意如下細(xì)節(jié):單條語句的情況第if(){}else{}結(jié)構(gòu)的簡寫形式變量=(條件表示式)?表達(dá)式1:表達(dá)式2;條件表達(dá)式無論寫成什么樣子,只看最終的結(jié)構(gòu)是否是true

或者false;if(){}和if(){}elseif(){}的區(qū)別北京傳智播客教育練習(xí)根據(jù)用戶輸入的數(shù)字返回星期幾根據(jù)用戶的輸入的月份返回季節(jié)

3,4,5春季

6,7,8夏季

9,10,11秋季

12,1,2冬季北京傳智播客教育Tip2:選擇語句switch語句格式:switch(表達(dá)式){ case取值1:

執(zhí)行語句;

break;

case取值2:

執(zhí)行語句;

break;

…... default:

執(zhí)行語句;

break;}北京傳智播客教育Tip2:switch語句使用細(xì)節(jié)使用switch語句要注意如下細(xì)節(jié):switch語句接收的類型是:byte、short、int、char和枚舉case語句和default語句無序break語句switch語句的結(jié)束的兩種情況:break、switch{}執(zhí)行完畢北京傳智播客教育練習(xí)使用switch語句改寫前面的小程序注意:switch和if語句之間的區(qū)別?1、switch判斷區(qū)間很大的數(shù)值很麻煩,而且不能執(zhí)行boolean表達(dá)式2、switch中case直接加載內(nèi)存北京傳智播客教育extends代碼塊變量的作用域北京傳智播客教育Tip3:循環(huán)語句while語句格式:while(條件表達(dá)式){

執(zhí)行語句;}dowhile語句格式:do{

執(zhí)行語句;}while(條件表達(dá)式);注意:while和dowhile的區(qū)別?dowhile特點(diǎn)是條件無論是否滿足,循環(huán)體至少被執(zhí)行一次。Java語言中的三種循環(huán)結(jié)構(gòu):while、dowhile、for北京傳智播客教育Tip3:while和dowhile循環(huán)使用細(xì)節(jié)使用while和dowhile循環(huán)要注意以下細(xì)節(jié):單條語句(不加{})空語句while();循環(huán)的結(jié)束(變量改變)dowhlie();語句后的;號(hào)無限循環(huán)的寫法北京傳智播客教育Tip3:循環(huán)語句for語句格式:for(初始化表達(dá)式;循環(huán)條件表達(dá)式;循環(huán)后的操作表達(dá)式){

執(zhí)行語句;}For循環(huán)的執(zhí)行原理:初始化表達(dá)式只讀一次,判斷循環(huán)條件,為真就執(zhí)行循環(huán)體,然后再執(zhí)行循環(huán)后的操作表達(dá)式,接著繼續(xù)判斷循環(huán)條件,重復(fù)執(zhí)行該過程,直到條件不滿足為止。北京傳智播客教育Tip3:使用for循環(huán)注意的細(xì)節(jié)使用for循環(huán)應(yīng)該注意如下細(xì)節(jié):while與for可以互換,區(qū)別在于for為了循環(huán)而定義的變量在for循環(huán)結(jié)束就是在內(nèi)存中釋放。而while循環(huán)使用的變量在循環(huán)結(jié)束后還可以繼續(xù)使用。無限循環(huán)的實(shí)現(xiàn):while(true),for(;;)北京傳智播客教育擴(kuò)展:增強(qiáng)for循環(huán)(JDK5.0)增強(qiáng)for循環(huán)for(:)細(xì)節(jié):循環(huán)遍歷時(shí)無法改變?nèi)萜髦械闹当本﹤髦遣タ徒逃毩?xí)for(sop("a");sop("b");sop("c")){System.out.println("d");}intx=1;for(sop(“a”);x<3;sop(“c”)){ System.out.println("d"); x++;}intx=1;for(sop(“a”);x<3;sop(“c”),x++){ System.out.println("d");}北京傳智播客教育練習(xí)獲取1~10的累加和?1+2+3+4+5…+101~100之間的7的倍數(shù)的個(gè)數(shù)并打???循環(huán)語句的嵌套練習(xí)打印一般的幾何圖形:圓形打印九九乘法口訣表模版代碼:for(inti=0;i<4;i++){for(intj=0;j<4;j++){System.out.print("*");}System.out.println();}北京傳智播客教育Tip4:其他流程控制語句break和continue語句作用:break結(jié)束當(dāng)前選擇或循環(huán)continue繼續(xù)當(dāng)前循環(huán)使用范圍:break語句:選擇結(jié)構(gòu)(switch)和循環(huán)結(jié)構(gòu)。continue語句:應(yīng)用于循環(huán)結(jié)構(gòu)。北京傳智播客教育Tip4:break和continue使用細(xì)節(jié)使用break和continue語句應(yīng)該注意以下細(xì)節(jié):這兩個(gè)語句離開應(yīng)用范圍是沒有意義的這兩個(gè)語句后面的語句無法執(zhí)行到continue語句默認(rèn)結(jié)束當(dāng)前循環(huán),如果要結(jié)束外部其他循環(huán)需要使用標(biāo)號(hào)北京傳智播客教育練習(xí)for(intx=1;x<=9;x++){System.out.println("a");break;}for(intx=1;x<=9;x++){break;System.out.println("a");}qq:for(intx=0;x<3;x++){for(inty=0;y<4;y++){System.out.println("x="+x);breakqq;

}}北京傳智播客教育Tip5:函數(shù)(方法)什么是函數(shù)?函數(shù)就是程序中具有特定功能的小程序。函數(shù)的作用封裝代碼,提高復(fù)用性Java中函數(shù)定義的格式:返回值類型函數(shù)名(參數(shù)類型形式參數(shù)1,參數(shù)類型形式參數(shù)2,……) {

執(zhí)行語句; return返回值; }北京傳智播客教育Tip5:函數(shù)特點(diǎn)函數(shù)的特點(diǎn)它是程序中一段獨(dú)立的小程序。它可以實(shí)現(xiàn)獨(dú)立的功能。它只有被調(diào)用才會(huì)執(zhí)行。它可以被重復(fù)使用。函數(shù)的應(yīng)用判斷兩個(gè)數(shù)是否相等?北京傳智播客教育Tip5:函數(shù)的重載重載(overload)的概念:

在同一個(gè)類中,允許存在一個(gè)以上的同名函數(shù),只要它們的參數(shù)個(gè)數(shù)或者參數(shù)類型不同即可,將這些方法統(tǒng)稱為重載的方法。存在的原因:

對(duì)于相同的功能,重載的方法更方便閱讀,優(yōu)化了程序設(shè)計(jì)。細(xì)節(jié): 與返回值類型無關(guān),只看參數(shù)列表。北京傳智播客教育練習(xí)下列哪些函數(shù)是voidshow(inta,charb,doublec){}函數(shù)的重載函數(shù)?voidshow(intx,chary,doublez){}//falsevoidshow(inta,doublec,charb){}//trueintshow(inta,doublec,charb){}//truevoidshow(inta,charb){}//truevoidshow(doublec){}//truedoubleshow(intx,chary,doublez){}//false北京傳智播客教育Tip6:數(shù)組引入概念:老王養(yǎng)了6只雞,體重分別是7斤、5斤、4斤、6斤、10斤和6斤, 請(qǐng)按照你目前所學(xué)的知識(shí)求老王養(yǎng)的雞的總重是多少斤?6變量解決數(shù)組解決(數(shù)組體驗(yàn))概念:同一種類型數(shù)據(jù)的集合。數(shù)組的好處:可以自動(dòng)給元素從0開始編號(hào),方便操作這些元素。數(shù)組的格式:元素類型[]數(shù)組名=new元素類型[元素個(gè)數(shù)或數(shù)組長度];

例:int[]arr=newint[5];

另一種初始化方式: 元素類型[]數(shù)組名={元素,元素,……};

例:int[]arr=newint[]{3,5,1,7};北京傳智播客教育Tip7:內(nèi)存特點(diǎn)開辟不同內(nèi)存空間是為了對(duì)每一片內(nèi)存中的數(shù)據(jù)都有不同的處理方式,提高效率。棧內(nèi)存的特點(diǎn): 存儲(chǔ)局部變量,空間不用時(shí)自動(dòng)釋放內(nèi)存。堆內(nèi)存的特點(diǎn):存儲(chǔ)數(shù)組和對(duì)象,通過new關(guān)鍵字建立的實(shí)體都存放在堆內(nèi)存當(dāng)中。實(shí)體都有一個(gè)內(nèi)存地址值。對(duì)內(nèi)存中的變量都有默認(rèn)初始化值。垃圾回收機(jī)制,Java特有的內(nèi)存管理機(jī)制,在不定時(shí)的時(shí)間內(nèi)將垃圾清除釋放空間。方法區(qū)內(nèi)存特點(diǎn):對(duì)象共享北京傳智播客教育Tip8:內(nèi)存結(jié)構(gòu)arr0x0012堆內(nèi)存int[]arr=newint[4];棧內(nèi)存newint[4]0x0012arr[0]arr[1]arr[2]arr[3]北京傳智播客教育Tip9:數(shù)組操作常見問題直接打印數(shù)組問題[I@de6ced空指針異常(NullPointerException)數(shù)組腳標(biāo)越界異常(ArrayIndexOutOfBoundsException)北京傳智播客教育Tip10:數(shù)組的常見操作遍歷求出最大值,最小值排序(冒泡,選擇)折半查找北京傳智播客教育Tip11:遍歷publicstaticvoidprintArra(int[]a){for(inti=0;i<a.length;i++){if(i!=a.length-1){System.out.print(a[i]+",");}else{System.out.println(a[i]);}}}北京傳智播客教育Tip12:最大最小值publicintgetMax(int[]a){inttemp=a[0]; for(inti=0;i<a.length;i++){ if(a[i+1]>temp){ temp=a[i+1]; } }returntemp;}練習(xí):寫一個(gè)函數(shù)求返回一個(gè)數(shù)組中的最小值。北京傳智播客教育擴(kuò)展:排序幾種常見的排序算法(冒泡、選擇、插入、快速、希爾、堆)北京傳智播客教育Tip13:排序之選擇排序

publicvoidselectSort(int[]a){ for(intx=0;x<a.length-1;x++){ for(inty=x+1;y<a.length;y++){ if(a[x]>a[y]){ inttemp=a[x]; a[x]=a[y]; a[y]=temp; } } }}原理:使用數(shù)組的第一個(gè)元素挨個(gè)和數(shù)組其他比較,滿足條件換位,換位后繼續(xù)比較,以此類推...北京傳智播客教育Tip14:排序之冒泡

publicvoidselectSort(int[]a){ for(intx=0;x<a.length-1;x++){

for(inty=0;y<a.length-x-1;y++){ if(a[y]>a[y+1]){ inttemp=a[y]; a[y]=a[y+1]; a[y+1]=temp; } } }}原理:相鄰的兩個(gè)元素進(jìn)行比較,如果滿足條件就換位。北京傳智播客教育Tip15:查找

publicstaticinthalfSearch(intsrc[],intkey){intmin=0;intmax=src.length-1;intmid=(min+max)/2;while(src[mid]!=key){if(key>src[mid]){min=mid+1;}elseif(key<src[mid]){max=mid-1;}if(min>max){return-1;}mid=(min+max)/2;}returnmid;}前提:數(shù)組是有序的北京傳智播客教育擴(kuò)展:Arrays(數(shù)組的操作類)ArraysSUN設(shè)計(jì)的數(shù)組工具類,主要對(duì)數(shù)組進(jìn)行高效的排序、查找以及比較等。常用方法:sort(int[]a)toString(int[]a)binarySearch(int[]a,intkey)北京傳智播客教育Tip16:數(shù)組中的數(shù)組二維數(shù)組例:

int[][]arr=newint[3][2];

定義了一個(gè)二維數(shù)組,其中有三個(gè)一維數(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論