




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Java中的關(guān)鍵字Java 語(yǔ)言中有一些具有特殊用途的詞被稱為關(guān)鍵字。關(guān)鍵字對(duì) Java 的編譯器有著特殊的意義,在程序中應(yīng)用時(shí)一定要慎重哦!Java 中常用關(guān)鍵字:?jiǎn)枺哼@么多,記不住啊。-_-|答:現(xiàn)在不需要你記住所有,混個(gè)眼熟即可,在學(xué)習(xí)的過(guò)程中,你會(huì)逐步找到感覺(jué)并記住他們對(duì)了,差點(diǎn)忘了大事,Java 關(guān)鍵字是區(qū)分大小寫(xiě)的哦!所以 void 是關(guān)鍵字,但 Void 就不是了認(rèn)識(shí)Java標(biāo)識(shí)符 問(wèn):標(biāo)識(shí)符是神馬? 答:標(biāo)識(shí)符就是用于給 Java 程序中變量、類、方法等命名的符號(hào)。使用標(biāo)識(shí)符時(shí),需要遵守幾條規(guī)則: 1. 標(biāo)識(shí)符可以由字母、數(shù)字、下劃
2、線(_)、美元符($)組成,但不能包含 、%、空格等其它特殊字符,不能以數(shù)字開(kāi)頭。譬如:123name 就是不合法滴 2. 標(biāo)識(shí)符不能是 Java 關(guān)鍵字和保留字( Java 預(yù)留的關(guān)鍵字,以后的升級(jí)版本中有可能作為關(guān)鍵字),但可以包含關(guān)鍵字和保留字。如:不可以使用 void 作為標(biāo)識(shí)符,但是 Myvoid 可以 3. 標(biāo)識(shí)符是嚴(yán)格區(qū)分大小寫(xiě)的。 所以涅,一定要分清楚 imooc 和 IMooc 是兩個(gè)不同的標(biāo)識(shí)符哦! 4. 標(biāo)識(shí)符的命名最
3、好能反映出其作用,做到見(jiàn)名知意。變量是什么簡(jiǎn)單的說(shuō),我們可以把變量看作是個(gè)盒子,可以將鑰匙、手機(jī)、飲料等物品存放在這個(gè)盒子中,也可以在需要的時(shí)候換成我們想存放的新物品。在 Java 中,我們通過(guò)三個(gè)元素描述變量:變量類型、變量名以及變量值。如果我們把變量比作是酒店的房間,要存儲(chǔ)的數(shù)據(jù)就好比要住宿的客人,我們可以根據(jù)客人的要求安排其入住“標(biāo)準(zhǔn)間”或者是“總統(tǒng)套房”,并且可以根據(jù)房間名字快速查找到入住客人的信息。同理,在 Java 程序中,我們也可以根據(jù)所需要保存的數(shù)據(jù)的格式,將其保存在指定類型的變量空間中,并且通過(guò)變量名快速定位!例如,我們定義了一個(gè)變量 love ,用來(lái)保存
4、一個(gè)字符串 “imooc” , 在程序中只要找到了 love 這個(gè)變量,就能找到存儲(chǔ)在里面的 ”imooc”!當(dāng)然,我們也可以把 love 里面的值更換成新的字符串 “i love imooc” !運(yùn)行結(jié)果:各位小伙伴們一定要注意哦: Java 中的標(biāo)點(diǎn)符號(hào)是英文的。譬如語(yǔ)句結(jié)束的分號(hào),是英文符號(hào)的分號(hào),千萬(wàn)表寫(xiě)成中文滴哦如何命名Java變量如同酒店會(huì)給每個(gè)房間起個(gè)性化的名字一樣,程序中的變量也需要用合理的名字進(jìn)行管理-變量名!需要注意,給酒店房間起名字時(shí)可以是數(shù)字,如“802”,也可以是有趣的名字,如“牡丹”、“美國(guó)總統(tǒng)”
5、、“水簾洞”等,但在給變量起名字時(shí),必須符合一定的規(guī)則,如下所示:以下變量的命名都是符合規(guī)范的:但請(qǐng)看下面的代碼,你懂得哈:優(yōu)秀攻城師的習(xí)慣:1、變量名由多單詞組成時(shí),第一個(gè)單詞的首字母小寫(xiě),其后單詞的首字母大寫(xiě),俗稱駱駝式命名法(也稱駝峰命名法),如 myAge2、變量命名時(shí),盡量簡(jiǎn)短且能清楚的表達(dá)變量的作用,做到見(jiàn)名知意。如:定義變量名 stuName 保存“學(xué)生姓名”信息PS: Java 變量名的長(zhǎng)度沒(méi)有限制,但 Java 語(yǔ)言是區(qū)分大小寫(xiě)的,所以 price 和 Price 是兩個(gè)完全不同的變量哦Java中的數(shù)據(jù)類型通常情況下,為了方便
6、物品的存儲(chǔ),我們會(huì)規(guī)定每個(gè)盒子可以存放的物品種類,就好比在“放臭襪子的盒子”里我們是不會(huì)放“面包”的!同理,變量的存儲(chǔ)也講究“分門(mén)別類”!Java 語(yǔ)言是一種強(qiáng)類型語(yǔ)言。通俗點(diǎn)說(shuō)就是,在 Java 中存儲(chǔ)的數(shù)據(jù)都是有類型的,而且必須在編譯時(shí)就確定其類型。 Java 中有兩類數(shù)據(jù)類型:在 Java 的領(lǐng)域里,基本數(shù)據(jù)類型變量存的是數(shù)據(jù)本身,而引用類型變量存的是保存數(shù)據(jù)的空間地址。說(shuō)白了,基本數(shù)據(jù)類型變量里存儲(chǔ)的是直接放在抽屜里的東西,而引用數(shù)據(jù)類型變量里存儲(chǔ)的是這個(gè)抽屜的鑰匙,鑰匙和抽屜一一對(duì)應(yīng)。常用的基本數(shù)據(jù)類型有:你可能已經(jīng)注意到了:注:關(guān)于 float 型和 double 型的區(qū)別,以及
7、char 型和 String 型的不同,在 wiki 中有相關(guān)的總結(jié),小伙伴們可以去查看哦String 是一種常見(jiàn)的引用數(shù)據(jù)類型,用來(lái)表示字符串。在程序開(kāi)發(fā)中,很多操作都要使用字符串來(lái)完成,例如系統(tǒng)中的用戶名、密碼、電子郵箱等。Java中變量的使用規(guī)則不得不接受的變量小脾氣:1、Java 中的變量需要先聲明后使用2、變量使用時(shí),可以聲明變量的同時(shí)進(jìn)行初始化,也可以先聲明后賦值3、變量中每次只能賦一個(gè)值,但可以修改多次4、main 方法中定義的變量必須先賦值,然后才能輸出5、雖然語(yǔ)法中沒(méi)有提示錯(cuò)誤,但在實(shí)際開(kāi)發(fā)中,變量名不建議使用中文,容易產(chǎn)生安全隱患,譬如后期跨平臺(tái)操作時(shí)出現(xiàn)亂碼等等
8、關(guān)于 String :表示變量中存儲(chǔ)的數(shù)據(jù)的類型為字符串,后面小節(jié)中會(huì)詳細(xì)講到,小小期待吧Java中的自動(dòng)類型轉(zhuǎn)換在 Java 程序中,不同的基本數(shù)據(jù)類型的數(shù)據(jù)之間經(jīng)常需要進(jìn)行相互轉(zhuǎn)換。例如:,代碼中 int 型變量 score1 可以直接為 double 型變量 score2 完成賦值操作,運(yùn)行結(jié)果為: 82.0 這種轉(zhuǎn)換稱為自動(dòng)類型轉(zhuǎn)換。當(dāng)然自動(dòng)類型轉(zhuǎn)換是需要滿足特定的條件的:1. 目標(biāo)類型能與源類型兼容,如 double 型兼容 int 型,但是 char 型不能兼容 int 型2. 目標(biāo)類型大于源類型,如 dou
9、ble 類型長(zhǎng)度為 8 字節(jié), int 類型為 4 字節(jié),因此 double 類型的變量里直接可以存放 int 類型的數(shù)據(jù),但反過(guò)來(lái)就不可以了Java中的強(qiáng)制類型轉(zhuǎn)換相信小伙伴們也發(fā)現(xiàn)了,盡管自動(dòng)類型轉(zhuǎn)換是很方便的,但并不能滿足所有的編程需要。 例如,當(dāng)程序中需要將 double 型變量的值賦給一個(gè) int 型變量,該如何實(shí)現(xiàn)呢?顯然,這種轉(zhuǎn)換是不會(huì)自動(dòng)進(jìn)行的!因?yàn)?int 型的存儲(chǔ)范圍比 double 型的小。此時(shí)就需要通過(guò)強(qiáng)制類型轉(zhuǎn)換來(lái)實(shí)現(xiàn)了。語(yǔ)法:( 數(shù)據(jù)類型 ) 數(shù)值運(yùn)行結(jié)果:可以看到,通過(guò)強(qiáng)制類型轉(zhuǎn)換將 75.8 賦值給 int 型變量后,結(jié)果為 7
10、5,數(shù)值上并未進(jìn)行四舍五入,而是直接將小數(shù)位截?cái)唷C靼琢税桑瑥?qiáng)制類型轉(zhuǎn)換可能會(huì)造成數(shù)據(jù)的丟失哦,小伙伴們?cè)趹?yīng)用時(shí)一定要慎重哦!Java常量的應(yīng)用所謂常量,我們可以理解為是一種特殊的變量,它的值被設(shè)定后,在程序運(yùn)行過(guò)程中不允許改變。語(yǔ)法:final 常量名 = 值;程序中使用常量可以提高代碼的可維護(hù)性。例如,在項(xiàng)目開(kāi)發(fā)時(shí),我們需要指定用戶的性別,此時(shí)可以定義一個(gè)常量 SEX,賦值為 "男",在需要指定用戶性別的地方直接調(diào)用此常量即可,避免了由于用戶的不規(guī)范賦值導(dǎo)致程序出錯(cuò)的情況。伙計(jì)們注意啦:常量名一般使用大寫(xiě)字符如何在Java中使用注釋在編寫(xiě)程序時(shí),經(jīng)常需要添加一些注釋,用
11、以描述某段代碼的作用。一般來(lái)說(shuō),對(duì)于一份規(guī)范的程序源代碼而言,注釋?xiě)?yīng)該占到源代碼的 1/3 以上。因此,注釋是程序源代碼的重要組成部分,一定要加以重視哦!Java 中注釋有三種類型:?jiǎn)涡凶⑨尅⒍嘈凶⑨尅⑽臋n注釋運(yùn)行結(jié)果: Hello Imooc!看:被注釋的代碼塊在程序運(yùn)行時(shí)是不會(huì)被執(zhí)行的我們可以通過(guò) javadoc 命令從文檔注釋中提取內(nèi)容,生成程序的 API 幫助文檔。打開(kāi)首頁(yè),查看下生成的 API 文檔PS:使用文檔注釋時(shí)還可以使用 javadoc 標(biāo)記,生成更詳細(xì)的文檔信息: author
12、60;標(biāo)明開(kāi)發(fā)該類模塊的作者 version 標(biāo)明該類模塊的版本 see 參考轉(zhuǎn)向,也就是相關(guān)主題 param 對(duì)方法中某參數(shù)的說(shuō)明 return 對(duì)方法返回值的說(shuō)明 exception 對(duì)方法可能拋出的異常進(jìn)行說(shuō)明什么是運(yùn)算符運(yùn)算符是一種“功能”符號(hào),用以通知 Java 進(jìn)行相關(guān)的運(yùn)算。
13、譬如,我們需要將變量 age 的值設(shè)置為 20 ,這時(shí)候就需要一個(gè)“=”,告訴程序需要進(jìn)行賦值操作。Java 語(yǔ)言中常用的運(yùn)算符可分為如下幾種:Ø 算術(shù)運(yùn)算符Ø 賦值運(yùn)算符Ø 比較運(yùn)算符Ø 邏輯運(yùn)算符Ø 條件運(yùn)算符Java中的算術(shù)運(yùn)算符算術(shù)運(yùn)算符主要用于進(jìn)行基本的算術(shù)運(yùn)算,如加法、減法、乘法、除法等。Java 中常用的算術(shù)運(yùn)算符: 其中,+ 和 - 既可以出現(xiàn)在操作數(shù)的左邊,也可以出現(xiàn)在右邊,但結(jié)果是不同滴例1:運(yùn)行結(jié)果:例2:運(yùn)行結(jié)果:一定要注意哦!自增
14、和自減運(yùn)算符只能用于操作變量,不能直接用于操作數(shù)值或常量!例如 5+ 、 8- 等寫(xiě)法都是錯(cuò)誤滴!PS:% 用來(lái)求余數(shù),也稱為”取模運(yùn)算符“Java中的賦值運(yùn)算符賦值運(yùn)算符是指為變量或常量指定數(shù)值的符號(hào)。如可以使用 “=” 將右邊的表達(dá)式結(jié)果賦給左邊的操作數(shù)。Java 支持的常用賦值運(yùn)算符,如下表所示:Java中的比較運(yùn)算符比較運(yùn)算符用于判斷兩個(gè)數(shù)據(jù)的大小,例如:大于、等于、不等于。比較的結(jié)果是一個(gè)布爾值( true 或 false )。Java 中常用的比較運(yùn)算符如下表所示:注意哦:1、 > 、 < 、 >= 、 <= 只支持左右兩邊操作數(shù)是數(shù)值
15、類型2、 = 、 != 兩邊的操作數(shù)既可以是數(shù)值類型,也可以是引用類型Java中的邏輯運(yùn)算符邏輯運(yùn)算符主要用于進(jìn)行邏輯運(yùn)算。Java 中常用的邏輯運(yùn)算符如下表所示:我們可以從“投票選舉”的角度理解邏輯運(yùn)算符:1、 與:要求所有人都投票同意,才能通過(guò)某議題2、 或:只要求一個(gè)人投票同意就可以通過(guò)某議題3、 非:某人原本投票同意,通過(guò)非運(yùn)算符,可以使其投票無(wú)效4、 異或:有且只能有一個(gè)人投票同意,才可以通過(guò)某議題當(dāng)使用邏輯運(yùn)算符時(shí),我們會(huì)遇到一種很有趣的“短路”現(xiàn)象。譬如:( one > two ) && ( on
16、e < three ) 中,如果能確定左邊 one > two 運(yùn)行結(jié)果為 false , 則系統(tǒng)就認(rèn)為已經(jīng)沒(méi)有必要執(zhí)行右側(cè)的 one < three 啦。同理,在( one > two ) | ( one < three ) 中,如果能確定左邊表達(dá)式的運(yùn)行結(jié)果為 true , 則系統(tǒng)也同樣會(huì)認(rèn)為已經(jīng)沒(méi)有必要再進(jìn)行右側(cè)的 one < three 的執(zhí)行啦!Java中的條件運(yùn)算符條件運(yùn)算符( ? : )也稱為 “三元運(yùn)算符”。語(yǔ)法形式:布爾表達(dá)式 ? 表達(dá)式1 :表達(dá)式2運(yùn)算過(guò)程:如果布爾表達(dá)式的值為
17、 true ,則返回 表達(dá)式1 的值,否則返回 表達(dá)式2 的值例如:因?yàn)椋磉_(dá)式 8>5 的值為 true ,所以,返回: 8大于5Java中運(yùn)算符的優(yōu)先級(jí)所謂優(yōu)先級(jí),就是在表達(dá)式中的運(yùn)算順序。Java 中常用的運(yùn)算符的優(yōu)先級(jí)如下表所示:級(jí)別為 1 的優(yōu)先級(jí)最高,級(jí)別 11 的優(yōu)先級(jí)最低。譬如,x = 7 + 3 * 2 得到的結(jié)果是 13 “先乘后加”嘛!PS:大家沒(méi)必要去死記運(yùn)算符的優(yōu)先級(jí)順序,實(shí)際開(kāi)發(fā)中,一般會(huì)使用小括號(hào)輔助進(jìn)行優(yōu)先級(jí)管理。例如:分析:小括號(hào)優(yōu)先級(jí)最高,因此1、 執(zhí)
18、行 a + 18 ,結(jié)果為 302、 執(zhí)行( a + 18 ) % 4 取模,結(jié)果為 23、 執(zhí)行 a * ( ( a + 18 ) % 4 ),結(jié)果為 24Java條件語(yǔ)句之 if生活中,我們經(jīng)常需要先做判斷,然后才決定是否要做某件事情。例如,如果考試成績(jī)大于 90 分,則獎(jiǎng)勵(lì)一個(gè) IPHONE 5S 。對(duì)于這種“需要先判斷條件,條件滿足后才執(zhí)行的情況”,就可以使用 if 條件語(yǔ)句實(shí)現(xiàn)。語(yǔ)法: 執(zhí)行過(guò)程: 如:注意哦:如果 if 條件成立時(shí)的執(zhí)行語(yǔ)句只有一條,是可以省略大括號(hào)滴!但如果執(zhí)行語(yǔ)句
19、有多條,那么大括號(hào)就是不可或缺的嘍Java條件語(yǔ)句之 if.elseif.else 語(yǔ)句的操作比 if 語(yǔ)句多了一步: 當(dāng)條件成立時(shí),則執(zhí)行 if 部分的代碼塊; 條件不成立時(shí),則進(jìn)入 else 部分。例如,如果考試成績(jī)大于 90 分,則獎(jiǎng)勵(lì)一個(gè) IPHONE 5S ,否則罰做 500 個(gè)俯臥撐。語(yǔ)法:執(zhí)行過(guò)程: 如:Java條件語(yǔ)句之多重 if多重 if 語(yǔ)句,在條件 1 不滿足的情況下,才會(huì)進(jìn)行條件 2 的判斷;當(dāng)前面的條件均不成立時(shí),才會(huì)執(zhí)行 else 塊內(nèi)的代碼。例如,如果考試成績(jī)大于 90 分,則獎(jiǎng)勵(lì)一個(gè) IPHONE 5
20、S ,如果成績(jī)介于 70 分至 90 分之間,則獎(jiǎng)勵(lì)一個(gè)紅米,否則罰做 500 個(gè)俯臥撐。語(yǔ)法: 執(zhí)行過(guò)程: 如:該段代碼的含義是:如果 score 值大于90,則獎(jiǎng)勵(lì)一個(gè) Iphone 5s ,當(dāng) score 值小于等于 90 時(shí),先判斷 score 是否大于 70 ,如果 score 是介于 70-90 之間,則獎(jiǎng)勵(lì)一個(gè)紅米,如果成績(jī)小于等于 70 ,則罰做 500 個(gè)俯臥撐當(dāng)需要判斷的條件是連續(xù)的區(qū)間時(shí),使用多重 if 語(yǔ)句是非常方便滴!Java條件語(yǔ)句之嵌套 if嵌套 if 語(yǔ)句,只有當(dāng)外層 if 的條件成立時(shí),才會(huì)判斷內(nèi)層 if 的條件。例如,
21、活動(dòng)計(jì)劃的安排,如果今天是工作日,則去上班,如果今天是周末,則外出游玩;同時(shí),如果周末天氣晴朗,則去室外游樂(lè)場(chǎng)游玩,否則去室內(nèi)游樂(lè)場(chǎng)游玩。語(yǔ)法: 執(zhí)行過(guò)程: 例如:運(yùn)行結(jié)果為: 去室外游樂(lè)場(chǎng)玩Java條件語(yǔ)句之 switch當(dāng)需要對(duì)選項(xiàng)進(jìn)行等值判斷時(shí),使用 switch 語(yǔ)句更加簡(jiǎn)潔明了。例如:根據(jù)考試的名次,給予前 4 名不同的獎(jiǎng)品。第一名,獎(jiǎng)勵(lì)筆記本一臺(tái);第二名,獎(jiǎng)勵(lì) IPAD 2 一個(gè);第三名,獎(jiǎng)勵(lì)移動(dòng)電源一個(gè);最后一名獎(jiǎng)勵(lì) U 盤(pán)一個(gè)。語(yǔ)法:執(zhí)行過(guò)程:當(dāng) switch 后表達(dá)式的值和 case 語(yǔ)句后的值相同時(shí),從該位置開(kāi)始向下執(zhí)行,直到遇到
22、160;break 語(yǔ)句或者 switch 語(yǔ)句塊結(jié)束;如果沒(méi)有匹配的 case 語(yǔ)句則執(zhí)行 default 塊的代碼。如:不得不說(shuō)的幾點(diǎn)小秘密:1、 switch 后面小括號(hào)中表達(dá)式的值必須是整型或字符型2、 case 后面的值可以是常量數(shù)值,如 1、2;也可以是一個(gè)常量表達(dá)式,如 2+2 ;但不能是變量或帶有變量的表達(dá)式,如 a * 23、 case 匹配后,執(zhí)行匹配塊里的程序代碼,如果沒(méi)有遇見(jiàn) break 會(huì)繼續(xù)執(zhí)行下一個(gè)的 case 塊的內(nèi)容,直到遇到 break 語(yǔ)句或者 switch 語(yǔ)句塊結(jié)束 如 ,運(yùn)行結(jié)果:
23、;4、 可以把功能相同的 case 語(yǔ)句合并起來(lái),如5、 default 塊可以出現(xiàn)在任意位置,也可以省略Java循環(huán)語(yǔ)句之 while生活中,有些時(shí)候?yàn)榱送瓿扇蝿?wù),需要重復(fù)的進(jìn)行某些動(dòng)作。如參加 10000 米長(zhǎng)跑,需要繞 400 米的賽道反復(fù)的跑 25 圈。在 Java 中實(shí)現(xiàn)功能時(shí),也經(jīng)常需要重復(fù)執(zhí)行某些代碼,例如,我們?yōu)榱吮硎尽皾饬业膼?ài)”,希望輸出 1000 行“我愛(ài)慕課網(wǎng)!”。顯然,此時(shí)重復(fù)敲 1000 遍輸出語(yǔ)句是不靠譜滴!那么,有木有好的辦法來(lái)解決呢? 有,循環(huán)語(yǔ)句!Java 常用的 3 種循環(huán): while 、 do.while 、 for本小節(jié)咱
24、們先來(lái)聊聊 while語(yǔ)法: 執(zhí)行過(guò)程:< 1 >、 判斷 while 后面的條件是否成立( true / false )< 2 >、 當(dāng)條件成立時(shí),執(zhí)行循環(huán)內(nèi)的操作代碼 ,然后重復(fù)執(zhí)行< 1 >、< 2 >, 直到循環(huán)條件不成立為止特點(diǎn):先判斷,后執(zhí)行如:Java循環(huán)語(yǔ)句之 do.whiledo.while 循環(huán)與 while 循環(huán)語(yǔ)法有些類似,但執(zhí)行過(guò)程差別比較大。語(yǔ)法: 執(zhí)行過(guò)程:<1>、 先執(zhí)行一遍循環(huán)操作,然后判斷循環(huán)條件是否成立<2>、 如果
25、條件成立,繼續(xù)執(zhí)行< 1 > 、< 2 >,直到循環(huán)條件不成立為止特點(diǎn): 先執(zhí)行,后判斷由此可見(jiàn),do.while 語(yǔ)句保證循環(huán)至少被執(zhí)行一次!例如,依然輸出 1000 遍“我愛(ài)慕課網(wǎng)”,使用 do.while 的實(shí)現(xiàn)代碼為: Java循環(huán)語(yǔ)句之 forJava 的循環(huán)結(jié)構(gòu)中除了 while 和 do.while 外,還有 for 循環(huán),三種循環(huán)可以相互替換。語(yǔ)法: 執(zhí)行過(guò)程:<1>、 執(zhí)行循環(huán)變量初始化部分,設(shè)置循環(huán)的初始狀態(tài),此部分在整個(gè)循環(huán)中只執(zhí)行一次<2>、 進(jìn)行循環(huán)條件的判斷,如果條件為
26、 true ,則執(zhí)行循環(huán)體內(nèi)代碼;如果為 false ,則直接退出循環(huán)<3>、 執(zhí)行循環(huán)變量變化部分,改變循環(huán)變量的值,以便進(jìn)行下一次條件判斷<4>、 依次重新執(zhí)行< 2 >、< 3 >、< 4 >,直到退出循環(huán)特點(diǎn):相比 while 和 do.while 語(yǔ)句結(jié)構(gòu)更加簡(jiǎn)潔易讀例如,輸出 1000 遍“我愛(ài)慕課網(wǎng)”,使用 for 的實(shí)現(xiàn)代碼為:需要留心的幾個(gè)小細(xì)節(jié):1、 for 關(guān)鍵字后面括號(hào)中的三個(gè)表達(dá)式必須用 “;” 隔開(kāi),三個(gè)表達(dá)式都可以省略,但 “;” 不能省略。 a. 省略“循環(huán)變量初始化”,可以在
27、 for 語(yǔ)句之前由賦值語(yǔ)句進(jìn)行變量初始化操作,如: b. 省略“循環(huán)條件”,可能會(huì)造成循環(huán)將一直執(zhí)行下去,也就是我們常說(shuō)的“死循環(huán)”現(xiàn)象,如:在編程過(guò)程中要避免“死循環(huán)”的出現(xiàn),因此,對(duì)于上面的代碼可以在循環(huán)體中使用 break 強(qiáng)制跳出循環(huán)(關(guān)于 break 的用法會(huì)在后面介紹)。 c. 省略“循環(huán)變量變化”,可以在循環(huán)體中進(jìn)行循環(huán)變量的變化,如:2、 for 循環(huán)變量初始化和循環(huán)變量變化部分,可以是使用 “,” 同時(shí)初始化或改變多個(gè)循環(huán)變量的值,如:代碼中,初始化變量部分同時(shí)對(duì)兩個(gè)變量 i 和 j 賦初值,循環(huán)變量變化部分也同時(shí)對(duì)兩個(gè)變
28、量進(jìn)行變化,運(yùn)行結(jié)果:3、 循環(huán)條件部分可以使用邏輯運(yùn)算符組合的表達(dá)式,表示復(fù)雜判斷條件,但一定注意運(yùn)算的優(yōu)先級(jí),如:代碼中,必須同時(shí)滿足變量 i 小于 10 ,并且 i 不等于 5 時(shí)才會(huì)進(jìn)行循環(huán),輸出變量 i 的值。Java循環(huán)跳轉(zhuǎn)語(yǔ)句之 break生活中,我們經(jīng)常會(huì)因?yàn)槟承┰蛑袛嗉榷ǖ娜蝿?wù)安排。如在參加 10000 米長(zhǎng)跑時(shí),才跑了 500 米就由于體力不支,需要退出比賽。在 Java 中,我們可以使用 break 語(yǔ)句退出指定的循環(huán),直接執(zhí)行循環(huán)后面的代碼。例如,使用循環(huán)輸出 1-10的數(shù)值,其中,如果數(shù)值大于 2 ,并且為 3 的倍數(shù)則停止輸出。實(shí)現(xiàn)代碼:運(yùn)行結(jié)果:Jav
29、a循環(huán)跳轉(zhuǎn)語(yǔ)句之 continuecontinue 的作用是跳過(guò)循環(huán)體中剩余的語(yǔ)句執(zhí)行下一次循環(huán)。例如,打印 1-10 之間所有的偶數(shù),使用 continue 語(yǔ)句實(shí)現(xiàn)代碼為:運(yùn)行結(jié)果:Java 循環(huán)語(yǔ)句之多重循環(huán)循環(huán)體中包含循環(huán)語(yǔ)句的結(jié)構(gòu)稱為多重循環(huán)。三種循環(huán)語(yǔ)句可以自身嵌套,也可以相互嵌套,最常見(jiàn)的就是二重循環(huán)。在二重循環(huán)中,外層循環(huán)每執(zhí)行一次,內(nèi)層循環(huán)要執(zhí)行一圈。如下所示:例如:使用 * 打印長(zhǎng)方形:實(shí)現(xiàn)代碼為:執(zhí)行流程:當(dāng) i = 1 時(shí),外層循環(huán)條件成立,進(jìn)入內(nèi)層循環(huán),開(kāi)始打印第一行內(nèi)容。此時(shí), j 從 1 開(kāi)始,循環(huán) 8 次,內(nèi)層循環(huán)結(jié)束后換行,實(shí)現(xiàn)第一行 8
30、個(gè) * 的輸出。接下來(lái)返回外層循環(huán) i 變?yōu)?2 ,準(zhǔn)備打印下一行,依此類推,直到完成長(zhǎng)方形的打印。什么是數(shù)組問(wèn):編寫(xiě)代碼保存 4 名學(xué)生的考試成績(jī)。答:簡(jiǎn)單啊,定義 4 個(gè)變量唄問(wèn):那“計(jì)算全年級(jí) 400 名學(xué)生的考試成績(jī)”,腫么辦答: 。數(shù)組,就可以幫助你妥妥的解決問(wèn)題啦!數(shù)組可以理解為是一個(gè)巨大的“盒子”,里面可以按順序存放多個(gè)類型相同的數(shù)據(jù),比如可以定義 int 型的數(shù)組 scores 存儲(chǔ) 4 名學(xué)生的成績(jī)數(shù)組中的元素都可以通過(guò)下標(biāo)來(lái)訪問(wèn),下標(biāo)從 0 開(kāi)始。例如,可以通過(guò) scores0 獲取數(shù)組中的第一個(gè)元素 76 ,scores2 就可以取到第三個(gè)元素 92 啦!如何使
31、用 Java 中的數(shù)組Java 中操作數(shù)組只需要四個(gè)步驟:1、 聲明數(shù)組語(yǔ)法: 數(shù)據(jù)類型 數(shù)組名;或者 數(shù)據(jù)類型 數(shù)組名 ;其中,數(shù)組名可以是任意合法的變量名,如:2、 分配空間簡(jiǎn)單地說(shuō),就是指定數(shù)組中最多可存儲(chǔ)多少個(gè)元素語(yǔ)法: 數(shù)組名 = new 數(shù)據(jù)類型 數(shù)組長(zhǎng)度 ;其中,數(shù)組長(zhǎng)度就是數(shù)組中能存放元素的個(gè)數(shù),如:話說(shuō),我們也可以將上面的兩個(gè)步驟合并,在聲明數(shù)組的同時(shí)為它分配空間,如:3、 賦值分配空間后就可以向數(shù)組中放數(shù)據(jù)了,數(shù)組中元素都是通過(guò)下標(biāo)來(lái)訪問(wèn)的,例如向 scores 數(shù)組中存放
32、學(xué)生成績(jī)4、 處理數(shù)組中數(shù)據(jù)我們可以對(duì)賦值后的數(shù)組進(jìn)行操作和處理,如獲取并輸出數(shù)組中元素的值在 Java 中還提供了另外一種直接創(chuàng)建數(shù)組的方式,它將聲明數(shù)組、分配空間和賦值合并完成,如它等價(jià)于:使用循環(huán)操作 Java 中的數(shù)組實(shí)際開(kāi)發(fā)中我們經(jīng)常使用循環(huán)控制數(shù)組成員的操作。如: 運(yùn)行結(jié)果: 其中, 數(shù)組名.length 用于獲取數(shù)組的長(zhǎng)度需要注意的“小毛病”:1、 數(shù)組下標(biāo)從 0 開(kāi)始。因此 scores3 ,表示數(shù)組中的第 4 個(gè)元素,而并非第 3 個(gè)元素2、 數(shù)組下標(biāo)的范圍是 0 至 數(shù)組長(zhǎng)度-1 ,如果越界
33、訪問(wèn),就會(huì)報(bào)錯(cuò)。如:運(yùn)行時(shí)會(huì)報(bào)如下錯(cuò)誤: 上面錯(cuò)誤信息的意思是數(shù)組下標(biāo)超過(guò)范圍,即數(shù)組訪問(wèn)越界。在上面的代碼中創(chuàng)建一個(gè)長(zhǎng)度為 2 的數(shù)組,因此數(shù)組下標(biāo)范圍是 0 到 1 ,而程序中下標(biāo)出現(xiàn)了 2 ,即 scores2 ,超過(guò)了范圍,造成數(shù)組訪問(wèn)越界。使用 Arrays 類操作 Java 中的數(shù)組Arrays 類是 Java 中提供的一個(gè)工具類,在 java.util 包中。該類中包含了一些方法用來(lái)直接操作數(shù)組,比如可直接實(shí)現(xiàn)數(shù)組的排序、搜索等(關(guān)于類和方法的相關(guān)內(nèi)容在后面的章節(jié)中會(huì)詳細(xì)講解滴)。Arrays 中常用的方法:1、 排序語(yǔ)法: Arrays.sort
34、(數(shù)組名);可以使用 sort( ) 方法實(shí)現(xiàn)對(duì)數(shù)組的排序,只要將數(shù)組名放在 sort( ) 方法的括號(hào)中,就可以完成對(duì)該數(shù)組的排序(按升序排列),如:運(yùn)行結(jié)果: 2、 將數(shù)組轉(zhuǎn)換為字符串語(yǔ)法: Arrays.toString(數(shù)組名);可以使用 toString( ) 方法將一個(gè)數(shù)組轉(zhuǎn)換成字符串,該方法按順序把多個(gè)數(shù)組元素連接在一起,多個(gè)元素之間使用逗號(hào)和空格隔開(kāi),如:運(yùn)行結(jié)果為: 輸出數(shù)組nums中的元素:25,7,126,53,14,86Arrays 類還提供了許多其他方法來(lái)操作數(shù)組此處就不一一列舉啦,各位小伙伴們可以在 wiki 查
35、閱更多信息使用 foreach 操作數(shù)組foreach 并不是 Java 中的關(guān)鍵字,是 for 語(yǔ)句的特殊簡(jiǎn)化版本,在遍歷數(shù)組、集合時(shí), foreach 更簡(jiǎn)單便捷。從英文字面意思理解 foreach 也就是“ for 每一個(gè)”的意思,那么到底怎么使用 foreach 語(yǔ)句呢?語(yǔ)法:我們分別使用 for 和 foreach 語(yǔ)句來(lái)遍歷數(shù)組運(yùn)行結(jié)果:看到 foreach 的方便了吧!留個(gè)思考問(wèn)題給大家:如果想在 foreach 語(yǔ)句中獲取數(shù)組元素的下標(biāo),該如何做呢?Java 中的二維數(shù)組所謂二維數(shù)組,可以簡(jiǎn)單的理解為是一種“特殊”的一維數(shù)組,它的每個(gè)數(shù)組空間中保存的是一個(gè)一
36、維數(shù)組。那么如何使用二維數(shù)組呢,步驟如下:1、 聲明數(shù)組并分配空間或者如:2、 賦值二維數(shù)組的賦值,和一維數(shù)組類似,可以通過(guò)下標(biāo)來(lái)逐個(gè)賦值,注意索引從 0 開(kāi)始也可以在聲明數(shù)組的同時(shí)為其賦值如:3、 處理數(shù)組二維數(shù)組的訪問(wèn)和輸出同一維數(shù)組一樣,只是多了一個(gè)下標(biāo)而已。在循環(huán)輸出時(shí),需要里面再內(nèi)嵌一個(gè)循環(huán),即使用二重循環(huán)來(lái)輸出二維數(shù)組中的每一個(gè)元素。如: 運(yùn)行結(jié)果:需要了解的:在定義二維數(shù)組時(shí)也可以只指定行的個(gè)數(shù),然后再為每一行分別指定列的個(gè)數(shù)。如果每行的列數(shù)不同,則創(chuàng)建的是不規(guī)則的二維數(shù)組,如下所示:運(yùn)行結(jié)果為:如何定義 Java 中的方法所謂方法,就是用來(lái)解決一類問(wèn)題的代碼的有序組合
37、,是一個(gè)功能模塊。一般情況下,定義一個(gè)方法的語(yǔ)法是:其中:1、 訪問(wèn)修飾符:方法允許被訪問(wèn)的權(quán)限范圍, 可以是 public、protected、private 甚至可以省略 ,其中 public 表示該方法可以被其他任何代碼調(diào)用,其他幾種修飾符的使用在后面章節(jié)中會(huì)詳細(xì)講解滴2、 返回值類型:方法返回值的類型,如果方法不返回任何值,則返回值類型指定為 void ;如果方法具有返回值,則需要指定返回值的類型,并且在方法體中使用 return 語(yǔ)句返回值3、 方法名:定義的方法的名字,必須使用合法的標(biāo)識(shí)符4、 參數(shù)列表:傳遞給方法的參數(shù)列表,參數(shù)可以有多個(gè),多個(gè)參數(shù)間以逗號(hào)隔開(kāi),每個(gè)參數(shù)
38、由參數(shù)類型和參數(shù)名組成,以空格隔開(kāi) 根據(jù)方法是否帶參、是否帶返回值,可將方法分為四類:Ø 無(wú)參無(wú)返回值方法Ø 無(wú)參帶返回值方法Ø 帶參無(wú)返回值方法Ø 帶參帶返回值方法Java 中無(wú)參無(wú)返回值方法的使用如果方法不包含參數(shù),且沒(méi)有返回值,我們稱為無(wú)參無(wú)返回值的方法。方法的使用分兩步:第一步,定義方法例如:下面代碼定義了一個(gè)方法名為 show ,沒(méi)有參數(shù),且沒(méi)有返回值的方法,執(zhí)行的操作為輸出 “ welcome to imooc. ”注意哦:1、 方法體放在一對(duì)大括號(hào)中,實(shí)現(xiàn)特定的操作2、 方法名主要在調(diào)用這個(gè)方法時(shí)使用,需要注意命名的規(guī)范,一般采
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 敬老院消防宣傳課件內(nèi)容
- 廣西舞蹈教學(xué)科目五課件
- 教育英文課件
- 鳥(niǎo)的天堂課件教學(xué)
- 新春圓夢(mèng)活動(dòng)方案
- 新春報(bào)班送好禮活動(dòng)方案
- 新客戶引流活動(dòng)方案
- 【文山】2025年云南文山州麻栗坡縣事業(yè)單位緊缺崗位招聘15人筆試歷年典型考題及考點(diǎn)剖析附帶答案詳解
- 數(shù)字鄉(xiāng)村活動(dòng)方案
- 時(shí)尚音樂(lè)活動(dòng)策劃方案
- 《云南教育強(qiáng)省建設(shè)規(guī)劃綱要(2024-2035年)》解讀培訓(xùn)
- 第四章美容手術(shù)基本知識(shí)及技術(shù)美容外科學(xué)概論講解
- 2025年中鐵交通投資集團(tuán)有限公司招聘筆試參考題庫(kù)含答案解析
- 滬教版(五四學(xué)制)(2024)六年級(jí)下冊(cè)單詞表+默寫(xiě)單
- 酒店中央空調(diào)維護(hù)合同
- (2025)時(shí)事政治題庫(kù)(含參考答案)
- 【MOOC期末】《中國(guó)哲學(xué)》(北京師范大學(xué)) 期末中國(guó)大學(xué)慕課答案
- GB/T 18916.65-2024工業(yè)用水定額第65部分:飲料
- 廚師高級(jí)技師論文范文
- 口腔科醫(yī)療垃圾的分類及處理方法
- 2025年工地安全生產(chǎn)月活動(dòng)方案范文
評(píng)論
0/150
提交評(píng)論