《java 語言基礎(chǔ)》PPT課件.ppt
《《java 語言基礎(chǔ)》PPT課件.ppt》由會員分享,可在線閱讀,更多相關(guān)《《java 語言基礎(chǔ)》PPT課件.ppt(86頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1,第二章java語言基礎(chǔ),java語言的詞法數(shù)據(jù)類型變量操作符與表達(dá)式流程控制語句數(shù)組與字符串,,2,java語言的詞法,空格與分號注釋標(biāo)識符關(guān)鍵字,第二章java語言基礎(chǔ),3,java語言的詞法1.空格與分號,Java是一種自由格式的語言,可以用任意個空格、制表符、換行符隔開每個詞。如:System.out.println("Counted"+count+"chars.");分號作為語句的結(jié)束符,每個語句必須以分號作為結(jié)束符。,第二章java語言基礎(chǔ),4,java語言的詞法2.注釋,三種注釋格式://實現(xiàn)單行注釋/*這是*一段注釋,*它跨越了多個行*//**JDK的javadoc工具用這種注釋信息能自動從程序中抽出類的公共接口形成文檔?!?/,第二章java語言基礎(chǔ),5,java語言的詞法3.標(biāo)識符,定義:標(biāo)識符用來作為類、方法和變量的名字語法規(guī)則:以字母、下劃線(_)、美元符號($)開始,后跟這三種符號或數(shù)字。例如:identifier_sys_var1$changeuserNameuser_name必須要區(qū)分大小寫沒有長度限制,第二章java語言基礎(chǔ),6,java語言的詞法3.標(biāo)識符《續(xù)》,約定:類名,接口名:首字母應(yīng)該大寫。classThisIsAClassNameinterfaceAccount字段、方法以及對象:首字母應(yīng)小寫。thisIsMethodOrFieldName()對于所有標(biāo)識符,其中包含的所有單詞都應(yīng)緊靠在一起,而且大寫中間單詞的首字母。例如:常量:全部用大寫字母表示。如:GREENHEAD_COUNTJava包(Package)屬于一種特殊情況:它們?nèi)际切懽帜?,即便中間的單詞亦是如此。如:packagejava.awt.event,第二章java語言基礎(chǔ),7,第二章java語言基礎(chǔ),java語言的詞法4.關(guān)鍵字,關(guān)鍵字是由系統(tǒng)定義的一些詞,它們在程序里代表特定的含義。定義表示符時要避免使用這些詞。,8,數(shù)據(jù)類型,基本數(shù)據(jù)類型(primitivetype:)引用數(shù)據(jù)類型(referencetype),第二章java語言基礎(chǔ),9,字符型:char整型:byte,short,int,andlong浮點型:double,float布爾型:boolean(取值true或false),第二章java語言基礎(chǔ),數(shù)據(jù)類型基本數(shù)據(jù)類型(primitivetype:),10,數(shù)據(jù)類型字符型數(shù)據(jù),第二章java語言基礎(chǔ),字符型常量:字符常量是用單引號括起來的一個字符,如‘a(chǎn)’,‘A’轉(zhuǎn)義字符,以反斜杠(\)開頭,將其后的字符轉(zhuǎn)變?yōu)榱硗獾暮x,11,數(shù)據(jù)類型字符型數(shù)據(jù),轉(zhuǎn)義字符描述\ddd1到3位8進(jìn)制數(shù)所表示的字符(ddd)\uxxxx1到4位16進(jìn)制數(shù)所表示的字符(xxxx)\’單引號字符\’’雙引號字符\\反斜杠字符\r回車\n換行\(zhòng)f走紙換頁\t橫向跳格\b退格,第二章java語言基礎(chǔ),12,數(shù)據(jù)類型字符型數(shù)據(jù),第二章java語言基礎(chǔ),2.字符型變量(char):它在機(jī)器中占16位,其范圍為0~65535字符型變量的定義如:charc=’a’;可以把它當(dāng)作整數(shù)數(shù)據(jù)來操作。例如:intthree=3;charone=’1’;charfour=(char)(three+one);//four=’4’,13,數(shù)據(jù)類型字符型數(shù)據(jù),第二章java語言基礎(chǔ),3.字符串型常量:字符串常量是作為String類的一個對象來處理的,而不是一個基本數(shù)據(jù).字符串常量是用雙引號(“”)括起來的一串字符,如“Thisisastring.\n”。字符串連接使用+操作符intcount=7例如:"Counted"+count+"chars.",14,數(shù)據(jù)類型字符型數(shù)據(jù),第二章java語言基礎(chǔ),3.字符串型常量:字符串連接使用+操作符intx=0,y=1,z=2;StringsString="x,y,z";System.out.println(sString+x+y+z);System.out.println(x+sString);,15,數(shù)據(jù)類型整型數(shù)據(jù),第二章java語言基礎(chǔ),整型常量:三種表示形式:十進(jìn)制整數(shù),如123,-456,0八進(jìn)制整數(shù),以0開頭,如0123表示十進(jìn)制數(shù)83,-011表示十進(jìn)制數(shù)-9。十六進(jìn)制整數(shù),以0 x或0X開頭,如0 x123表示十進(jìn)制數(shù)291默認(rèn)整型常量為int類型。在機(jī)器中占32位對于long型值,則要在數(shù)字后加L或l,如123L表示一個長整數(shù)。在機(jī)器中占64位。,16,第二章java語言基礎(chǔ),,2.整型變量整型變量的類型有byte,short,int,long四種整型長度數(shù)據(jù)類型取值范圍8bitsbyte-27to27-116bitsshort-215to215-132bitsint-231to231-164bitslong-263to263-1,數(shù)據(jù)類型整型數(shù)據(jù),17,第二章java語言基礎(chǔ),,3.整型變量的定義例如:byteb;//指定變量b為byte型shorts;//指定變量s為short型inti;//指定變量i為int型longl;//指定變量l為long型,數(shù)據(jù)類型整型數(shù)據(jù),18,數(shù)據(jù)類型浮點型數(shù)據(jù),第二章java語言基礎(chǔ),1.實型常量Java的實常數(shù)有兩種表示形式:十進(jìn)制數(shù)形式:由數(shù)字和小數(shù)點組成,且必須有小數(shù)點,如0.123,.123,123.,123.0科學(xué)計數(shù)法形式:如:123e3或123E3,其中e或E之前必須有數(shù)字,且e或E后面的指數(shù)必須為整數(shù)。實常數(shù)默認(rèn)類型為double型,在機(jī)器中占64位,對于float型的值,則要在數(shù)字后加f或F,如12.3F,它在機(jī)器中占32位,且表示精度較低。,19,數(shù)據(jù)類型浮點型數(shù)據(jù),第二章java語言基礎(chǔ),2.實型變量實型變量的類型有float和double兩種:數(shù)據(jù)類型所占位數(shù)float32double643.實型變量定義例如:floatf;//指定變量f為float型doubled;//指定變量d為double型,20,數(shù)據(jù)類型舉例,第二章java語言基礎(chǔ),請看Literals.java,21,數(shù)據(jù)類型引用數(shù)據(jù)類型(referencetype),第二章java語言基礎(chǔ),數(shù)組Array,類class,接口interface屬于reference類型。reference類型的變量是所引用的對象的內(nèi)存地址。例子:,22,數(shù)據(jù)類型引用數(shù)據(jù)類型(referencetype),第二章java語言基礎(chǔ),publicclassMyDate{privateintday=1;privateintmonth=1;privateintyear=2000;publicMyDate(intday,intmonth,intyear){...}publicvoidprint(){...}}publicclassTestMyDate{publicstaticvoidmain(String[]args){MyDatemy_birth=newMyDate(22,7,1964);},23,數(shù)據(jù)類型引用數(shù)據(jù)類型(referencetype),第二章java語言基礎(chǔ),創(chuàng)建一個類對象:MyDatemy_birth=newMyDate(22,7,1964);,24,數(shù)據(jù)類型引用數(shù)據(jù)類型(referencetype),第二章java語言基礎(chǔ),兩個引用變量的賦值將會產(chǎn)生如下結(jié)果:intx=7;inty=x;MyDates=newMyDate(22,7,1964);MyDatet=s;t=newMyDate(22,12,1964);兩個變量指向一個對象:,25,數(shù)據(jù)類型引用數(shù)據(jù)類型(referencetype),第二章java語言基礎(chǔ),當(dāng)t變量賦予一個新值時:t=newMyDate(22,12,1964);兩個變量分別指向兩個對象:,26,數(shù)據(jù)類型引用數(shù)據(jù)類型(referencetype),第二章java語言基礎(chǔ),見例題:Assignment.java結(jié)果:1:n1.i:9,n2.i:472:n1.i:47,n2.i:473:n1.i:27,n2.i:27將一個對象傳遞到方法內(nèi)部時,也會產(chǎn)生此現(xiàn)象見例題:PassObject.java輸出結(jié)果如下:1:x.c:a2:x.c:z,27,變量,第二章java語言基礎(chǔ),1.變量的定義變量名是一個合法的標(biāo)識符它是字母、數(shù)字、下劃線或美元符“$”的序列變量名不能以數(shù)字開頭不能為保留字變量名區(qū)分大小寫變量名應(yīng)具有一定的含義,以增加程序的可讀性,28,變量,第二章java語言基礎(chǔ),2.變量的作用域變量的作用域指明可訪問該變量的一段代碼按作用域來分,變量可以有下面幾種:局部變量Localvariable類變量Membervariable方法參數(shù)Methodparameter例外處理參數(shù)Exception-handlerparameter,29,2.變量的作用域,第二章java語言基礎(chǔ),1.變量的作用域,2.變量的作用域,30,變量,第二章java語言基礎(chǔ),3.變量的聲明格式:typeidentifier[=value][,identifier[=value]…];例如:inta,b,c;doubled1,d2=0.0;方法參數(shù)和例外處理參數(shù)的變量值是由調(diào)用者給出。,31,變量,第二章java語言基礎(chǔ),4.變量的默認(rèn)初始化值,32,運算符和表達(dá)式,第二章java語言基礎(chǔ),運算符指明對操作數(shù)所進(jìn)行的運算。按功能分類:算術(shù)運算符(+,-,*,/,%,++,--)關(guān)系運算符(>,=,>,>>,Integern2=newInteger(47);System.out.println(n1==n2);System.out.println(n1!=n2);}}結(jié)果:falsetrue,,,37,運算符和表達(dá)式關(guān)系運算符,第二章java語言基礎(chǔ),說明:若想對比兩個對象的實際內(nèi)容是否相同,使用方法equals()。例如:publicclassEqualsMethod{publicstaticvoidmain(String[]args){Integern1=newInteger(47);Integern2=newInteger(47);System.out.println(n1.equals(n2));}},,,38,運算符和表達(dá)式關(guān)系運算符,第二章java語言基礎(chǔ),說明:假設(shè)您創(chuàng)建了自己的類,結(jié)果如何?例如:classValue{inti;}publicclassEqualsMethod2{publicstaticvoidmain(String[]args){Valuev1=newValue();Valuev2=newValue();v1.i=v2.i=100;System.out.println(v1.equals(v2));}},,,結(jié)果:false,39,運算符和表達(dá)式布爾邏輯運算符,,第二章java語言基礎(chǔ),邏輯運算符AND(idoubled2=35.1;if(d2>=d1)System.out.println(d2+">="+d1);elseSystem.out.println(d1+">="+d2);},55,流程控制語句switch語句,第二章java語言基礎(chǔ),switch語句是實現(xiàn)多分支選擇結(jié)構(gòu)的另一個語句:switch(整數(shù)選擇因子){case整數(shù)值1:語句;break;case整數(shù)值2:語句;break;case整數(shù)值3:語句;break;case整數(shù)值4:語句;break;case整數(shù)值5:語句;break;//..default:語句;},56,流程控制語句switch語句,第二章java語言基礎(chǔ),說明:表達(dá)式expression可以返回任一整型類型的值(如整型、字符型)case子句中的值必須是常量,而且所有case子句中的值應(yīng)是不同的case通常與break語句聯(lián)用,以保證多路分支的正確實現(xiàn)。多個case可以公用一組執(zhí)行語句。case1:case2:case3:cout<<“hello”case1,2,3:cout<<“hello”//error,57,流程控制語句switch語句,第二章java語言基礎(chǔ),例題:根據(jù)考試成績的等級打印出百分制分?jǐn)?shù)段。publicclassGradeLevel{publicstaticvoidmain(Stringargs[]){System.out.println("\n****firstsituation****");chargrade=C;//normaluseswitch(grade){caseA:System.out.println(grade+"is85~100");break;caseB:System.out.println(grade+"is70~84");break;caseC:System.out.println(grade+"is60~69");break;caseD:System.out.println(grade+"is<60");break;default:System.out.println("inputerror");}},58,流程控制語句for循環(huán)語句,第二章java語言基礎(chǔ),格式for(初始表達(dá)式;布爾表達(dá)式;步進(jìn)){語句;}說明:無論初始表達(dá)式,布爾表達(dá)式,還是步進(jìn),都可以置空??稍趂or語句里定義多個變量,但它們必須具有同樣的類型:for(inti=0,j=1;i<10,59,流程控制語句for循環(huán)語句,第二章java語言基礎(chǔ),說明:Java里唯一用到逗號運算符的地方就是for循環(huán)的控制表達(dá)式。publicclassCommaOperator{publicstaticvoidmain(String[]args){for(inti=1,j=i+10;i<5;i++,j=i*2){System.out.println("i="+i+"j="+j);}}},輸出如下:i=1j=11i=2j=4i=3j=6i=4j=8,60,流程控制語句while循環(huán)語句,第二章java語言基礎(chǔ),格式:while(布爾表達(dá)式)語句例子:publicclassWhileTest{publicstaticvoidmain(String[]args){doubler=0;while(r<0.99d){r=Math.random();System.out.println(r);}}},61,流程控制語句do-while循環(huán)語句,第二章java語言基礎(chǔ),格式:do語句while(布爾表達(dá)式)例子:,62,流程控制語句其他循環(huán)控制語句,第二章java語言基礎(chǔ),,63,流程控制語句break[label]語句,第二章java語言基礎(chǔ),,不帶標(biāo)號的break語句,跳出它所在的循環(huán)語句或switch語句,并從緊跟該循環(huán)語句或switch語句后的第一條語句處執(zhí)行帶標(biāo)號的break語句:對Java來說,唯一用到標(biāo)簽的地方是在循環(huán)語句之前。label1:循環(huán)語句跳出標(biāo)號所指定的塊,并從緊跟該塊后的第一條語句處執(zhí)行,64,流程控制語句break[label]語句,第二章java語言基礎(chǔ),,例題:,65,流程控制語句continue[label]語句,第二章java語言基礎(chǔ),,不帶標(biāo)號的continue語句,用來結(jié)束本次循環(huán),跳過循環(huán)體中下面尚未執(zhí)行的語句,接著進(jìn)行終止條件的判斷,以決定是否繼續(xù)循環(huán)帶標(biāo)號的continue語句跳轉(zhuǎn)到標(biāo)號指明的外層循環(huán)中。,66,流程控制語句continue[label]語句,第二章java語言基礎(chǔ),,例題:,67,流程控制語句continue[label]語句,第二章java語言基礎(chǔ),,例題1:BreakAndContinue.java例題2:LabeledFor.java例題3:LabeledWhile.java,68,練習(xí),(1)寫一個程序,打印出1到100間的整數(shù)。(2)編寫一個for語句的雙重循環(huán),練習(xí)breaklabel和continuelabel語句。(3)創(chuàng)建一個switch語句,為每一種case都顯示一條消息。在每個case后面都放置一個break,并對其進(jìn)行測試。然后,刪除break,看看會有什么情況出現(xiàn)。,第二章java語言基礎(chǔ),69,數(shù)組,相同的數(shù)據(jù)類型元素類型按一定的順序排列就構(gòu)成了數(shù)組數(shù)組元素可以為:基本數(shù)據(jù)類型某一類的對象建立java數(shù)組需要以下三個步驟:聲明數(shù)組創(chuàng)建數(shù)組空間初始化數(shù)組元素,第二章java語言基礎(chǔ),70,數(shù)組聲明數(shù)組,聲明數(shù)組的語法格式有兩種如下:數(shù)組元素類型數(shù)組名[];數(shù)組元素類型[]數(shù)組名;例如:chars[];或:char[]s;Pointp[];Point[]p;,第二章java語言基礎(chǔ),71,數(shù)組創(chuàng)建數(shù)組空間,說明:為數(shù)組開辟內(nèi)存空間,在創(chuàng)建數(shù)組空間時必須為它指明數(shù)組的長度。一個數(shù)組是一個對象,所以用new來創(chuàng)建數(shù)組語法格式為:數(shù)組名=new數(shù)組元素類型[數(shù)組元素的個數(shù)];例如:int[]MyIntArray;MyIntArray=newint[10];,第二章java語言基礎(chǔ),Point[]MyIntArray;MyIntArray=newPoint[10];,72,數(shù)組創(chuàng)建數(shù)組空間,說明:也可以在創(chuàng)建數(shù)組空間的時候,同時將初值給出來,例如:int[]MyIntArray={1,2,3,4,5,6,7,8,9};存儲空間的分配等價于使用new基本數(shù)據(jù)類型的數(shù)組元素會自動初始化成“空”值(對于數(shù)值,空值就是零;對于char,它是null;而對于boolean,它卻是false)。數(shù)組名是對數(shù)組對象的一個引用。,第二章java語言基礎(chǔ),73,數(shù)組創(chuàng)建數(shù)組空間,第二章java語言基礎(chǔ),創(chuàng)建一個基本數(shù)據(jù)類型元素的數(shù)組:publicchar[]createArray(){char[]s;s=newchar[26];for(inti=0;i<26;i++){s[i]=(char)(‘A’+i);}returns;},74,數(shù)組創(chuàng)建數(shù)組空間,第二章java語言基礎(chǔ),創(chuàng)建一個對象數(shù)組:publicPoint[]createArray(){Point[]p;p=newPoint[10];for(inti=0;i<10;i++){p[i]=newPoint(i,i+1);}returnp;},75,數(shù)組創(chuàng)建數(shù)組空間,第二章java語言基礎(chǔ),說明:可以動態(tài)創(chuàng)建數(shù)組空間:int[]a;a=newint[pRand(20)];見例題:ArrayNew.java,76,數(shù)組數(shù)組邊界,第二章java語言基礎(chǔ),所有數(shù)組的上標(biāo)從0開始intlist[]=newint[10];for(inti=0;i- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
14.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該PPT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- java 語言基礎(chǔ) java 語言基礎(chǔ)PPT課件 java 語言 基礎(chǔ) PPT 課件
鏈接地址:http://m.italysoccerbets.com/p-12708408.html