Java基本語(yǔ)法_第1頁(yè)
Java基本語(yǔ)法_第2頁(yè)
Java基本語(yǔ)法_第3頁(yè)
Java基本語(yǔ)法_第4頁(yè)
Java基本語(yǔ)法_第5頁(yè)
已閱讀5頁(yè),還剩80頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、本章內(nèi)容 2.1 關(guān)鍵字 2.2 標(biāo)識(shí)符 2.3 變 量 2.4 進(jìn)制 2.5 運(yùn)算符 2.6 流程控制 選擇結(jié)構(gòu) 循環(huán)結(jié)構(gòu) 2.7 數(shù)組 一維數(shù)組 多維數(shù)組本章內(nèi)容 2.1 關(guān)鍵字 2.2 標(biāo)識(shí)符 2.3 變 量 2.4 進(jìn)制 2.5 運(yùn)算符 2.6 流程控制 選擇結(jié)構(gòu) 循環(huán)結(jié)構(gòu) 2.7 數(shù)組 一維數(shù)組 多維數(shù)組關(guān)鍵字關(guān)鍵字的定義和特點(diǎn)關(guān)鍵字的定義和特點(diǎn) 定義:被被JavaJava語(yǔ)言賦予了特殊含義,用做專門用途的字符串(單詞)語(yǔ)言賦予了特殊含義,用做專門用途的字符串(單詞) 特點(diǎn):關(guān)鍵字中所有字母都為小寫關(guān)鍵字中所有字母都為小寫用于定義數(shù)據(jù)類型的關(guān)鍵字用于定義數(shù)據(jù)類型的關(guān)鍵字classin

2、terfaceenumbyteshortintlongfloatdoublecharbooleanvoid用于定義數(shù)據(jù)類型值的關(guān)鍵字用于定義數(shù)據(jù)類型值的關(guān)鍵字truefalsenull用于定義流程控制的關(guān)鍵字用于定義流程控制的關(guān)鍵字ifelseswitchcasedefaultwhiledoforbreakcontinuereturn關(guān)鍵字用于定義訪問權(quán)限修飾符的關(guān)鍵字用于定義訪問權(quán)限修飾符的關(guān)鍵字privateprotectedpublic用于定義類,函數(shù),變量修飾符的關(guān)鍵字用于定義類,函數(shù),變量修飾符的關(guān)鍵字abstractfinalstaticsynchronized用于定義類與類之間關(guān)

3、系的關(guān)鍵字用于定義類與類之間關(guān)系的關(guān)鍵字extendsimplements用于定義建立實(shí)例及引用實(shí)例,判斷實(shí)例的關(guān)鍵字用于定義建立實(shí)例及引用實(shí)例,判斷實(shí)例的關(guān)鍵字newthissuperinstanceof用于異常處理的關(guān)鍵字用于異常處理的關(guān)鍵字trycatchfinallythrowthrows用于包的關(guān)鍵字用于包的關(guān)鍵字packageimport其他修飾符關(guān)鍵字其他修飾符關(guān)鍵字nativestrictfptransientvolatileassert標(biāo)識(shí)符 標(biāo)識(shí)符: Java 對(duì)各種變量變量、方法方法和類類等要素命名時(shí)使用的字符序列稱為標(biāo)識(shí)符 凡是自己可以起名字的地方都叫標(biāo)識(shí)符凡是自己可以

4、起名字的地方都叫標(biāo)識(shí)符。 定義合法標(biāo)識(shí)符規(guī)則: 由由2626個(gè)英文字母大小寫,數(shù)字:個(gè)英文字母大小寫,數(shù)字:0-9 0-9 ,_ _或或 $ $ 組成組成 數(shù)字不可以開頭。數(shù)字不可以開頭。 不可以使用關(guān)鍵字和保留字,但能包含關(guān)鍵字和保留字。不可以使用關(guān)鍵字和保留字,但能包含關(guān)鍵字和保留字。 JavaJava中嚴(yán)格區(qū)分大小寫,長(zhǎng)度無限制。中嚴(yán)格區(qū)分大小寫,長(zhǎng)度無限制。 標(biāo)識(shí)符不能包含空格。標(biāo)識(shí)符不能包含空格。 注意:在起名字的時(shí),為了提高閱讀性,要盡量有意義,“見名知意”。&abc2abcclassclass1Animalanimallast nameaageJavaJava中的名稱命名規(guī)范中的

5、名稱命名規(guī)范 Java中的名稱命名規(guī)范: 包名包名:多單詞組成時(shí)所有字母都小寫:xxxyyyzzz 類名接口名類名接口名:多單詞組成時(shí),所有單詞的首字母大寫:XxxYyyZzz 變量名變量名和函數(shù)名和函數(shù)名:多單詞組成時(shí),第一個(gè)單詞首字母小寫,第二個(gè)單詞開始每個(gè)單詞首字母大寫:xxxYyyZzz 常量名常量名:所有字母都大寫。多單詞時(shí)每個(gè)單詞用下劃線連接:XXX_YYY_ZZZlastNameuserNamesurveyNameorderName變量 變量的概念: 內(nèi)存中的一個(gè)存儲(chǔ)區(qū)域 該區(qū)域有自己的名稱(變量名)和類型(數(shù)據(jù)類型) Java中每個(gè)變量必須先聲明,后使用 該區(qū)域的數(shù)據(jù)可以在同一

6、類型范圍內(nèi)不斷變化 定義變量的格式:定義變量的格式:數(shù)據(jù)類型 變量名 = 初始化值 變量是通過使用變量名來訪問這塊區(qū)域的 Java是強(qiáng)類型語(yǔ)言,每個(gè)變量必須先聲明類型,后使用. 使用變量注意: 變量的作用域:一對(duì) 之間有效15.2int 類型a變量的分類 按被聲明的位置劃分: 成員變量:方法外部、類的內(nèi)部定義的變量 局部變量:方法或語(yǔ)句塊內(nèi)部定義的變量 注意:類外面(類對(duì)應(yīng)的大括號(hào)外面)不能有變量的聲明 按所屬的數(shù)據(jù)類型劃分按所屬的數(shù)據(jù)類型劃分: 基本數(shù)據(jù)類型變量 引用數(shù)據(jù)類型變量變量的分類-按數(shù)據(jù)類型 對(duì)于每一種數(shù)據(jù)都定義了明確的具體數(shù)據(jù)類型,在內(nèi)存中分配了不同大小的內(nèi)存空間。數(shù)據(jù)類型 基本

7、數(shù)據(jù)類型 引用數(shù)據(jù)類型數(shù)值型字符型(char)(char)布爾型(boolean)(boolean)整數(shù)類型(byte,short,int,long)(byte,short,int,long)浮點(diǎn)類型(float,double)(float,double)類(class)(class)接口(interface)(interface)數(shù)組( )( )(String)字符串在這里a堆棧12int a = 12;char c = m;mcString str = “abcde”;abcde0 x2244str整數(shù)類型:byte、short、int、long Java各整數(shù)類型有固定的表數(shù)范圍和字段長(zhǎng)

8、度,不受具體 OS 的影響,以保證 java 程序的可移植性。 Java 的整型常量默認(rèn)為 int 型,聲明 long 型常量須后加 l 或 L類類 型型占用存儲(chǔ)空間占用存儲(chǔ)空間表數(shù)范圍表數(shù)范圍byte1字節(jié)-128 127short2字節(jié)-215 215-1 int4字節(jié)-231 231-1long8字節(jié)-263 263-1浮點(diǎn)類型:float、double 與整數(shù)類型類似,Java 浮點(diǎn)類型也有固定的表數(shù)范圍和字段長(zhǎng)度,不受具體OS的影響。 Java Java 的浮點(diǎn)型常量默認(rèn)為的浮點(diǎn)型常量默認(rèn)為 double double 型型,聲明聲明 float float 型常量,型常量,須后加須

9、后加 f f 或或 F F 。 浮點(diǎn)型常量有兩種表示形式: 十進(jìn)制數(shù)形式:如:5.12 512.0f .512 (必須有小數(shù)點(diǎn)) 科學(xué)計(jì)數(shù)法形式:如:5.12e2 512E2 100E-2類類 型型占用存儲(chǔ)空間占用存儲(chǔ)空間表數(shù)范圍表數(shù)范圍單精度float4字節(jié)-3.403E38 3.403E38雙精度double8字節(jié)-1.798E308 1.798E308字符類型:char char 型數(shù)據(jù)用來表示通常意義上字符。 字符型常量的三種表現(xiàn)形式: 字符常量是用單引號(hào)( )括起來的單個(gè)字符,涵蓋世界上所有書面語(yǔ)的字符。例如:char c1 = a; char c2 = 中; char c3 = 9

10、; Java中還允許使用轉(zhuǎn)義字符來將其后的字符轉(zhuǎn)變?yōu)樘厥庾址统A?。例如:char c3 = n; - n表示換行符 直接使用 Unicode 值來表示字符型常量:uXXXX。其中,XXXX代表一個(gè)十六進(jìn)制整數(shù)。如:u000a 表示 n。 char 類型是可以進(jìn)行運(yùn)算的。因?yàn)樗紝?duì)應(yīng)有 Unicode 值。布爾類型:boolean boolean 類型適于邏輯運(yùn)算,一般用于程序流程控制: if條件控制語(yǔ)句; while循環(huán)控制語(yǔ)句; do-while循環(huán)控制語(yǔ)句; for循環(huán)控制語(yǔ)句; boolean類型數(shù)據(jù)只允許取值true和false,不可以0或非 0 的整數(shù)替代true和false,這點(diǎn)

11、和C語(yǔ)言不同。基本數(shù)據(jù)類型轉(zhuǎn)換 自動(dòng)類型轉(zhuǎn)換:容量小的類型自動(dòng)轉(zhuǎn)換為容量大的數(shù)據(jù)類型。數(shù)據(jù)類型按容量大小排序?yàn)椋?有多種類型的數(shù)據(jù)混合運(yùn)算時(shí),系統(tǒng)首先自動(dòng)將所有數(shù)據(jù)有多種類型的數(shù)據(jù)混合運(yùn)算時(shí),系統(tǒng)首先自動(dòng)將所有數(shù)據(jù)轉(zhuǎn)換成容量最大的那種數(shù)據(jù)類型,然后再進(jìn)行計(jì)算轉(zhuǎn)換成容量最大的那種數(shù)據(jù)類型,然后再進(jìn)行計(jì)算。 byte,short,charbyte,short,char之間不會(huì)相互轉(zhuǎn)換,他們?nèi)咴谟?jì)算時(shí)首之間不會(huì)相互轉(zhuǎn)換,他們?nèi)咴谟?jì)算時(shí)首先轉(zhuǎn)換為先轉(zhuǎn)換為intint類型類型。 當(dāng)把任何基本類型的值和字符串值進(jìn)行連接運(yùn)算時(shí)(+),基本類型的值將自動(dòng)轉(zhuǎn)化為字符串類型。 charbyteshortint

12、longfloatdouble強(qiáng)制類型轉(zhuǎn)換強(qiáng)制類型轉(zhuǎn)換 自動(dòng)類型轉(zhuǎn)換的逆過程,將容量大的數(shù)據(jù)類型轉(zhuǎn)換為容量小的數(shù)據(jù)類型。使用時(shí)要加上強(qiáng)制轉(zhuǎn)換符(() ()),但可能造成精度降低或溢出,格外要注意。 通常,字符串不能直接轉(zhuǎn)換為基本類型,但通過基本類型對(duì)應(yīng)的包裝類則可以實(shí)現(xiàn)把字符串轉(zhuǎn)換成基本類型。如: String a = “43”; int i = Integer.parseInt(a); boolean類型不可以轉(zhuǎn)換為其它的數(shù)據(jù)類型。 本章內(nèi)容 2.1 關(guān)鍵字 2.2 標(biāo)識(shí)符 2.3 變 量 2.4 進(jìn)制 2.5 運(yùn)算符 2.6 流程控制 選擇結(jié)構(gòu) 循環(huán)結(jié)構(gòu) 2.7 數(shù)組 一維數(shù)組 多維數(shù)組進(jìn)

13、 制(了解) 對(duì)于整數(shù),有四種表示方式: 二進(jìn)制二進(jìn)制:0,1 ,滿 2 進(jìn) 1.以 0b 或 0B 開頭。 十進(jìn)制:0-9 ,滿 10 進(jìn) 1. 八進(jìn)制:0-7 ,滿 8 進(jìn)1. 以數(shù)字 0 開頭表示。 十六進(jìn)制:0-9 及 A-F,滿 16 進(jìn)1. 以 0 x 或 0X開頭表示。此處的A-F不區(qū)分大小寫。進(jìn) 制 所有數(shù)字在計(jì)算機(jī)底層都以二進(jìn)制形式存在所有數(shù)字在計(jì)算機(jī)底層都以二進(jìn)制形式存在。 計(jì)算機(jī)以計(jì)算機(jī)以補(bǔ)碼補(bǔ)碼的形式保存所有的整數(shù)。的形式保存所有的整數(shù)。 正數(shù)正數(shù)的補(bǔ)碼與其原碼相同;負(fù)數(shù)的補(bǔ)碼是在其反碼的末位加的補(bǔ)碼與其原碼相同;負(fù)數(shù)的補(bǔ)碼是在其反碼的末位加1 1。 原碼:直接將一個(gè)數(shù)

14、值換成二進(jìn)制數(shù)。原碼:直接將一個(gè)數(shù)值換成二進(jìn)制數(shù)。 反碼:是對(duì)原碼按位取反,只是最高位(符號(hào)位)保持不變反碼:是對(duì)原碼按位取反,只是最高位(符號(hào)位)保持不變。 Java整數(shù)常量默認(rèn)是int類型,當(dāng)用二進(jìn)制定義整數(shù)時(shí),其第32位是符號(hào)位;當(dāng)是long類型時(shí),二進(jìn)制默認(rèn)占64位,第64位是符號(hào)位byte 的范圍:-128 127000000011000000111111110-1 的源碼最小的正數(shù):20 。源碼即為其補(bǔ)碼 反碼11111111-1 的補(bǔ)碼011111111111111110000000-127的源碼最大的正數(shù):127。源碼即為其補(bǔ)碼 反碼10000001-127 的補(bǔ)碼100000

15、00最小的負(fù)數(shù) -128 的補(bǔ)碼進(jìn) 制 制的基本轉(zhuǎn)換制的基本轉(zhuǎn)換 十進(jìn)制十進(jìn)制 二進(jìn)制互轉(zhuǎn)二進(jìn)制互轉(zhuǎn) 十進(jìn)制轉(zhuǎn)成二進(jìn)制 除以2取余數(shù) 二進(jìn)制轉(zhuǎn)成十進(jìn)制 乘以2的冪數(shù) 二進(jìn)制 八進(jìn)制互轉(zhuǎn) 二進(jìn)制 十六進(jìn)制互轉(zhuǎn) 十進(jìn)制 八進(jìn)制互轉(zhuǎn) 十進(jìn)制 十六進(jìn)制互轉(zhuǎn)123510123510123101210十進(jìn)制轉(zhuǎn)成二進(jìn)制 除以2取余數(shù)17281240220211111235 = 5 * 100 + 3 * 101 + 2 * 102 + 1 * 10315 = 1 * 20 + 1 * 21 + 1 * 22 + 1 * 23二進(jìn)制轉(zhuǎn)成十進(jìn)制 乘以2的冪數(shù)01120運(yùn)算符(熟悉) 算術(shù)運(yùn)算符 賦值運(yùn)算符 比較

16、運(yùn)算符(關(guān)系運(yùn)算符) 邏輯運(yùn)算符 位運(yùn)算符 三元運(yùn)算符算術(shù)運(yùn)算符運(yùn)算符運(yùn)算符運(yùn)算運(yùn)算范例范例結(jié)果結(jié)果+ +正號(hào)+33- -負(fù)號(hào)b=4; -b-4+ +加5+510- -減6-42* *乘3*412/ /除5/51%取模5%50+自增(前):先運(yùn)算后取值自增(后):先取值后運(yùn)算a=2;b=+a;a=2;b=a+;a=3;b=3a=3;b=2- - - - -自減(前):先運(yùn)算后取值自減(后):先取值后運(yùn)算a=2;b=- -aa=2;b=a- -a=1;b=1a=1;b=2+ +字符串相加“He”+”llo”“Hello”算術(shù)運(yùn)算符的注意問題算術(shù)運(yùn)算符的注意問題 如果對(duì)負(fù)數(shù)取模,可以把模數(shù)負(fù)號(hào)忽略

17、不記,如:5%-2=1。 但被模數(shù)是負(fù)數(shù)就另當(dāng)別論。 對(duì)于除號(hào)“/”,它的整數(shù)除和小數(shù)除是有區(qū)別的:整數(shù)之間做除法時(shí),只保留整數(shù)部分而舍棄小數(shù)部分。 例如:int x=3510;x=x/1000*1000; x的結(jié)果是? “+”除字符串相加功能外,還能把非字符串轉(zhuǎn)換成 字符串.例如:System.out.println(5+5=+5+5); /打印結(jié)果是?賦值運(yùn)算符 符號(hào):= 擴(kuò)展賦值運(yùn)算符: +=, -=, *=, /=, %=比較運(yùn)算符 注1:比較運(yùn)算符的結(jié)果都是boolean型,也就是要么是true,要么是false。 注2:比較運(yùn)算符“=”不能誤寫成“=” 。運(yùn)算符運(yùn)算符運(yùn)算運(yùn)算 范例

18、范例 結(jié)果結(jié)果=相等于 4=3 false!=不等于 4!=3 true小于 4大于 43 true=小于等于 4=大于等于 4=3 falseinstanceof檢查是否是類的對(duì)象 “Hello” instanceof String true邏輯運(yùn)算符運(yùn)算符運(yùn)算符運(yùn)算運(yùn)算范例范例結(jié)果結(jié)果&AND(與)false & truefalse|OR(或)false|truetrueXOR(異或)truefalsetrue! !Not(非)!truefalse&AND(短路短路)false&truefalse| |OR(短路短路)false|truetrue邏輯運(yùn)算符 邏輯運(yùn)算符用于連接布爾型表達(dá)式,

19、在Java中不可以寫成3x3 & x6 。 “&”和“&”的區(qū)別: 單&時(shí),左邊無論真假,右邊都進(jìn)行運(yùn)算; 雙&時(shí),如果左邊為真,右邊參與運(yùn)算,如果左邊為假,那么右邊不參與運(yùn)算。 和“|”的區(qū)別同理,雙或時(shí),左邊為真,右邊不參與運(yùn)算。 異或( )與或( | )的不同之處是:對(duì)于 而言,當(dāng)左右都為true時(shí),結(jié)果為false。位運(yùn)算符位運(yùn)算符的細(xì)節(jié)位運(yùn)算符的細(xì)節(jié)被移位的二進(jìn)制最高位是0,右移后,空缺位補(bǔ)0;最高位是1,空缺位補(bǔ)1。被移位二進(jìn)制最高位無論是被移位二進(jìn)制最高位無論是0 0或者是或者是1 1,空缺位都用,空缺位都用0 0補(bǔ)補(bǔ)。&二進(jìn)制位進(jìn)行&運(yùn)算,只有1&1時(shí)結(jié)果是1,否則是0;|二進(jìn)

20、制位進(jìn)行 | 運(yùn)算,只有0 | 0時(shí)結(jié)果是0,否則是1;相同二進(jìn)制位進(jìn)行 運(yùn)算,結(jié)果是0;11=0 , 00=0不相同二進(jìn)制位 運(yùn)算結(jié)果是1。10=1 , 01=1位運(yùn)算符 位運(yùn)算是直接對(duì)二進(jìn)制進(jìn)行運(yùn)算 位運(yùn)算符位運(yùn)算符運(yùn)算符運(yùn)算范例左移3 3*2*2=12右移3 1 = 1 - 3/2=1無符號(hào)右移3 1 = 1 - 3/2=1&與運(yùn)算6 & 3 = 2|或運(yùn)算6 | 3 = 7異或運(yùn)算6 3 = 5反碼6 = -7三元運(yùn)算符(熟悉) 格式: (條件表達(dá)式)?表達(dá)式1:表達(dá)式2; 如果條件為true,運(yùn)算后的結(jié)果是表達(dá)式1; 如果條件為false,運(yùn)算后的結(jié)果是表達(dá)式2;本章內(nèi)容 2.1 關(guān)

21、鍵字 2.2 標(biāo)識(shí)符 2.3 變 量 2.4 進(jìn)制 2.5 運(yùn)算符 2.6 流程控制 選擇結(jié)構(gòu) 循環(huán)結(jié)構(gòu) 2.7 數(shù)組 一維數(shù)組 多維數(shù)組 分支語(yǔ)句根據(jù)一定的條件有選擇地執(zhí)行或跳過特定的語(yǔ)句 Java分支語(yǔ)句分類 if-else 語(yǔ)句 switch 語(yǔ)句if(布爾表達(dá)式) 語(yǔ)句或語(yǔ)句塊; if(布爾表達(dá)式) 語(yǔ)句或語(yǔ)句塊; else if(布爾表達(dá)式) 語(yǔ)句或語(yǔ)句塊; else 語(yǔ)句或語(yǔ)句塊; public class TestAgepublic static void main(String args)TestAge t = new TestAge();t.age(75);public vo

22、id age(int age)if (age250) System.out.println(是個(gè)妖怪!); else System.out.println(此人芳齡 + age + 馬馬乎乎啦!);if語(yǔ)句練習(xí)(1) 編寫程序:由鍵盤輸入三個(gè)整數(shù)分別存入變量num1、num2、num3,對(duì)它們進(jìn)行排序(使用 if-else if-else),并且從小到大輸出。if語(yǔ)句練習(xí)(2)對(duì)下列代碼,若有輸出,指出輸出結(jié)果。int x=2;int y=3;if(x2)if(y2) int z=x+y; System.out.println(“z is ”+z); else System.out.print

23、ln(“x is ”+x);語(yǔ)法格式switch(表達(dá)式)case 常量1:語(yǔ)句1;break;case 常量2:語(yǔ)句2;break; case 常量N:語(yǔ)句N;break;default:語(yǔ)句;break; public class Test public static void main(String args)int i = 1;switch (i) case 0:System.out.println(zero);break; case 1:System.out.println(one);/break; default:System.out.println(default);break;

24、 switch(表達(dá)式)中表達(dá)式的返回值必須是下述幾種類型之一:int, byte, char, short, 枚舉;針對(duì)于表達(dá)式,在JDK1.7(包括)之后可以使用Stringcase子句中的值必須是常量,且所有case子句中的值應(yīng)是不同的;default子句是任選的;breakbreak語(yǔ)句語(yǔ)句用來在執(zhí)行完一個(gè)case分支后使程序跳出switch語(yǔ)句塊;switch語(yǔ)句練習(xí)(1) 使用switch語(yǔ)句改寫下列if語(yǔ)句: int a = 3; int x = 100; if(a=1)x+=5; /+= 與 x= x+5; 一樣else if(a=2)x+=10;else if(a=3)x+=

25、16;else if(a=4)x+=34; elsex += 100;switch語(yǔ)句練習(xí)(2) 編寫程序:從鍵盤上讀入一個(gè)學(xué)生成績(jī),存放在變量score中,根據(jù)score的值輸出其對(duì)應(yīng)的成績(jī)等級(jí):score=90 等級(jí):A70=score90 等級(jí): B60=score70 等級(jí): Cscore60 等級(jí):D本章內(nèi)容 2.1 關(guān)鍵字 2.2 標(biāo)識(shí)符 2.3 變 量 2.4 進(jìn)制 2.5 運(yùn)算符 2.6 流程控制 選擇結(jié)構(gòu) 循環(huán)結(jié)構(gòu) 2.7 數(shù)組 一維數(shù)組 多維數(shù)組 循環(huán)語(yǔ)句功能 在循環(huán)條件滿足的情況下,反復(fù)執(zhí)行特定代碼 循環(huán)語(yǔ)句的四個(gè)組成部分 初始化部分(init_statement) 循環(huán)

26、條件部分(test_exp) 循環(huán)體部分(body_statement) 迭代部分(alter_statement) 循環(huán)語(yǔ)句分類 for 循環(huán) while 循環(huán) do/while 循環(huán) 語(yǔ)法格式 for (初始化表達(dá)式; 布爾值測(cè)試表達(dá)式; 更改表達(dá)式) 語(yǔ)句或語(yǔ)句塊; 應(yīng)用舉例public class ForLoop public static void main(String args) int result = 0; for(int i=1; i=100; i+) result += i; System.out.println(result= + result); for語(yǔ)句練習(xí) 編寫

27、程序FooBizBaz.java,從1循環(huán)到150并在每行打印一個(gè)值,另外在每個(gè)3的倍數(shù)行上打印出“foo”,在每個(gè)5的倍數(shù)行上打印“biz”,在每個(gè)7的倍數(shù)行上打印輸出“baz”。123 foo45 biz6 foo 7 baz15 foo biz.105 foo biz baz語(yǔ)法格式語(yǔ)法格式 初始化語(yǔ)句初始化語(yǔ)句 while( while( 布爾值測(cè)試表達(dá)式布爾值測(cè)試表達(dá)式) ) 語(yǔ)句或語(yǔ)句塊語(yǔ)句或語(yǔ)句塊; ; 更改語(yǔ)句更改語(yǔ)句; ; 應(yīng)用舉例應(yīng)用舉例public class WhileLoop public class WhileLoop public static void main

28、(String args) public static void main(String args) int result = 0;int result = 0;int i=1;int i=1;while(i=100) while(i=100) result += i;result += i; i+; i+; System.out.println(result= + result);System.out.println(result= + result); 語(yǔ)法格式語(yǔ)法格式 初始化語(yǔ)句初始化語(yǔ)句 dodo 語(yǔ)句或語(yǔ)句塊語(yǔ)句或語(yǔ)句塊; ; 更改語(yǔ)句更改語(yǔ)句; ;while(while(布爾值測(cè)試

29、表達(dá)式布爾值測(cè)試表達(dá)式); ); 應(yīng)用舉例應(yīng)用舉例public class WhileLoop public class WhileLoop public static void main(String args) public static void main(String args) int result = 0, i=1;int result = 0, i=1;dodo result += i;result += i; i+; i+;while(i=100);while(i=100);System.out.println(result= + result);System.out.prin

30、tln(result= + result); while、do/while語(yǔ)句練習(xí) 編寫程序:求1到100之間所有偶數(shù)的和。用while語(yǔ)句分別完成。 編寫程序:從鍵盤讀入個(gè)數(shù)不確定的整數(shù),并判斷讀入的正數(shù)和負(fù)數(shù)的個(gè)數(shù),輸入為0時(shí)結(jié)束程序。 break 語(yǔ)句 break語(yǔ)句用于終止某個(gè)語(yǔ)句塊的執(zhí)行 break; break語(yǔ)句出現(xiàn)在多層嵌套的語(yǔ)句塊中時(shí),可以通過標(biāo)簽指明要終止的是哪一層語(yǔ)句塊 label1: label2: label3: break label2; break break 語(yǔ)句用法舉例語(yǔ)句用法舉例 public class TestBreakpublic class Test

31、Breakpublic static void main(String args)public static void main(String args) for(int i = 0; i10; i+) for(int i = 0; i10; i+) if(i=3)if(i=3) break; break; System.out.println( i = + i);System.out.println( i = + i); System.out.println(Game Over!); System.out.println(Game Over!); continue 語(yǔ)句 continue語(yǔ)句

32、用于跳過某個(gè)循環(huán)語(yǔ)句塊的一次執(zhí)行 continue語(yǔ)句出現(xiàn)在多層嵌套的循環(huán)語(yǔ)句體中時(shí),可以通過標(biāo)簽指明要跳過的是哪一層循環(huán) continue語(yǔ)句用法舉例1public class ContinueTest public static void main(String args) for (int i = 0; i 100; i+) if (i%10=0) continue; System.out.println(i); i=1 break只能用于switch語(yǔ)句和循環(huán)語(yǔ)句中。 continue 只能用于循環(huán)語(yǔ)句中。 標(biāo)號(hào)語(yǔ)句必須緊接在循環(huán)的頭部。標(biāo)號(hào)語(yǔ)句不能用在非循環(huán)語(yǔ)句的前面。 break和

33、continue之后不能有其他的語(yǔ)句,因?yàn)槌绦蛴肋h(yuǎn)不會(huì)執(zhí)行break 和 continue之后的語(yǔ)句。本章內(nèi)容 2.1 關(guān)鍵字 2.2 標(biāo)識(shí)符 2.3 變 量 2.4 進(jìn)制 2.5 運(yùn)算符 2.6 流程控制 選擇結(jié)構(gòu) 循環(huán)結(jié)構(gòu) 2.7 數(shù)組 使用 Eclipse 一維數(shù)組 多維數(shù)組使用 Eclipse Eclipse 是目前最流行的 Java IDE(Integrated Development Environment,集成開發(fā)環(huán)境) 下載:/downloads/ 我們用的是MyEclipse功能強(qiáng)于Ecipse,但是 安裝:直接解壓到非中文目錄下即可

34、。 數(shù)組是多個(gè)相同類型數(shù)據(jù)的組合,實(shí)現(xiàn)對(duì)這些數(shù)據(jù)的統(tǒng)一管理數(shù)組是多個(gè)相同類型數(shù)據(jù)的組合,實(shí)現(xiàn)對(duì)這些數(shù)據(jù)的統(tǒng)一管理 數(shù)組屬引用類型,數(shù)組型數(shù)據(jù)是對(duì)象數(shù)組屬引用類型,數(shù)組型數(shù)據(jù)是對(duì)象(Object)(Object),數(shù)組中的每個(gè)元素相當(dāng)于該對(duì)象的成員變量 數(shù)組中的元素可以是任何數(shù)據(jù)類型,包括基本類型和引用類型 一維數(shù)組的聲明方式: type var type var 或或 type vartype var;例如:int a;int a1;double b;Mydate c; /對(duì)象數(shù)組 JavaJava語(yǔ)言中聲明數(shù)組時(shí)不能指定其長(zhǎng)度語(yǔ)言中聲明數(shù)組時(shí)不能指定其長(zhǎng)度( (數(shù)組中元素的數(shù)數(shù)組中元素的數(shù))

35、 ), 例如: int a5; /非法a堆棧ox2233數(shù)組元素的引用數(shù)組元素的引用 Java中使用關(guān)鍵字 newnew 創(chuàng)建數(shù)組對(duì)象 定義并用運(yùn)算符 newnew 為之分配空間后,才可以引用數(shù)組中的每個(gè)元素; 數(shù)組元素的引用方式:數(shù)組名數(shù)組元素下標(biāo) 數(shù)組元素下標(biāo)可以是整型常量或整型表達(dá)式。如a3 , bi , c6*i; 數(shù)組元素下標(biāo)從0開始;長(zhǎng)度為n的數(shù)組合法下標(biāo)取值范圍: 0 - n-1;如int a=new int3; 可引用的數(shù)組元素為a0、a1、a2 每個(gè)數(shù)組都有一個(gè)屬性 length length 指明它的長(zhǎng)度,例如:a.lengtha.length 指明數(shù)組 a a 的長(zhǎng)度(元

36、素個(gè)數(shù))數(shù)組元素的默認(rèn)初始化數(shù)組元素的默認(rèn)初始化 數(shù)組是引用類型,它的元素相當(dāng)于類的成員變量,因此數(shù)數(shù)組一經(jīng)分配空間,其中的每個(gè)元素也被按照成員變量同樣組一經(jīng)分配空間,其中的每個(gè)元素也被按照成員變量同樣的方式被隱式初始化的方式被隱式初始化。例如:public class Test public static void main(String argv)int a= new int5;System.out.println(a3);/a3的默認(rèn)值為0 數(shù)組元素的默認(rèn)數(shù)組元素的默認(rèn)初始初始值值數(shù)組元素類型數(shù)組元素類型創(chuàng)建基本數(shù)據(jù)類型數(shù)組創(chuàng)建基本數(shù)據(jù)類型數(shù)組 (1)(1) public class T

37、est public class Test public static void main(String args) public static void main(String args) int s;int s; s = new int10;s = new int10; for ( int i=0; i10; i+ ) for ( int i=0; i10; i+ ) si =2 si =2* *i+1;i+1; System.out.println(si);System.out.println(si); Java中使用關(guān)鍵字new 創(chuàng)建數(shù)組對(duì)象 創(chuàng)建基本數(shù)據(jù)類型一維數(shù)組對(duì)象演示1main

38、棧內(nèi)存s堆內(nèi)存處內(nèi)存狀態(tài) 創(chuàng)建基本數(shù)據(jù)類型一維數(shù)組對(duì)象演示2main棧內(nèi)存ox1122s0int對(duì)象000000000堆內(nèi)存處內(nèi)存狀態(tài) public class Test public static void main(String args) int s; s = new int10; /int s=new int10; /基本數(shù)據(jù)類型數(shù)組如果沒有賦初值, /Java自動(dòng)給他們賦默認(rèn)值。 for ( int i=0; i10; i+ ) si =2*i+1; System.out.println(si); 創(chuàng)建基本數(shù)據(jù)類型數(shù)組創(chuàng)建基本數(shù)據(jù)類型數(shù)組 (2)(2)main棧內(nèi)存s1int對(duì)象35

39、791113151719堆內(nèi)存 public class Test public static void main(String args) int s; s = new int10; for ( int i=0; i10; i+ ) si =2*i+1; System.out.println(si); 處內(nèi)存狀態(tài) 創(chuàng)建基本數(shù)據(jù)類型一維數(shù)組對(duì)象演示3創(chuàng)建基本數(shù)據(jù)類型數(shù)組創(chuàng)建基本數(shù)據(jù)類型數(shù)組 (3)(3)創(chuàng)建對(duì)象數(shù)組創(chuàng)建對(duì)象數(shù)組 (1)(1) 創(chuàng)建元素為引用類型(對(duì)象)的數(shù)組class MyDate private int day; private int month; private int

40、year; public MyDate(int d, int m, int y)day = d; month = m; year = y; public void display()System.out.println(day + - + month + - + year); public class Test public static void main(String args) MyDate m; m = new MyDate10; for ( int i=0; i10; i+ ) mi =new MyDate(i+1, i+1,1990+i); mi.display(); main棧內(nèi)

41、存m堆內(nèi)存 創(chuàng)建元素為引用類型(對(duì)象)的數(shù)組演示處內(nèi)存狀態(tài)創(chuàng)建對(duì)象數(shù)組創(chuàng)建對(duì)象數(shù)組 (2)(2)main棧內(nèi)存mnullMyDate對(duì)象nullnullnullnullnullnullnullnullnull堆內(nèi)存處存狀態(tài) 創(chuàng)建元素為引用類型(對(duì)象)的數(shù)組演示創(chuàng)建對(duì)象數(shù)組創(chuàng)建對(duì)象數(shù)組 (3)(3) public class Test public static void main(String args) MyDate m; m = new MyDate10; for ( int i=0; i10; i+ ) mi =new MyDate(i+1, i+1,1990+i); mi.displa

42、y(); Java中使用關(guān)鍵字new 創(chuàng)建數(shù)組對(duì)象main棧內(nèi)存m*MyDate對(duì)象*nullnullnullnullnullnullnull堆內(nèi)存111990221991331992for循環(huán)執(zhí)行三次后內(nèi)存狀態(tài)創(chuàng)建對(duì)象數(shù)組創(chuàng)建對(duì)象數(shù)組 (4)(4) public class Test public static void main(String args) MyDate m; m = new MyDate10; for ( int i=0; i=最高分-10 等級(jí)為A 成績(jī)=最高分-20 等級(jí)為B成績(jī)=最高分-30 等級(jí)為C 其余 等級(jí)為D提示:先讀入學(xué)生人數(shù),根據(jù)人數(shù)創(chuàng)建int數(shù)組,存放學(xué)

43、生成績(jī)。3.定義類Student,包含三個(gè)屬性:學(xué)號(hào)number(int),年級(jí)state(int),成績(jī)score(int)。創(chuàng)建20個(gè)學(xué)生對(duì)象,學(xué)號(hào)為1到20,年級(jí)和成績(jī)都由隨機(jī)數(shù)確定,打印出3年級(jí)(state值為3)的學(xué)生信息。提示:生成隨機(jī)數(shù):Math.randon(),返回值類型double; 四舍五入取整:Math.round(),返回值類型long。2.2.從鍵盤讀入學(xué)生成績(jī),找出最高分,并輸出學(xué)生成績(jī)等級(jí)。從鍵盤讀入學(xué)生成績(jī),找出最高分,并輸出學(xué)生成績(jī)等級(jí)。成績(jī)成績(jī)=最高分最高分-10 -10 等級(jí)為等級(jí)為 A A 成績(jī)成績(jī)=最高分最高分-20 -20 等級(jí)為等級(jí)為 BB成績(jī)成

44、績(jī)=最高分最高分-30 -30 等級(jí)為等級(jí)為 C C 其余等級(jí)為其余等級(jí)為 DD提示:先讀入學(xué)生人數(shù),根據(jù)人數(shù)創(chuàng)建提示:先讀入學(xué)生人數(shù),根據(jù)人數(shù)創(chuàng)建intint數(shù)組,存放學(xué)生成績(jī)。數(shù)組,存放學(xué)生成績(jī)。請(qǐng)輸入學(xué)生人數(shù)請(qǐng)輸入學(xué)生人數(shù):5:5請(qǐng)輸入請(qǐng)輸入5 5個(gè)成績(jī)個(gè)成績(jī)56567474898941418989最高分是:最高分是:8989student 0 score is 56 grade is Dstudent 0 score is 56 grade is Dstudent 1 score is 74 grade is Bstudent 1 score is 74 grade is Bstudent 2 score is 89 grade is Astudent 2 score is 89 grade is Astudent 3 score is 41 grade is Dstudent 3 score is 41 grade is Dstudent 4

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論