java學(xué)習(xí)筆記_第1頁(yè)
java學(xué)習(xí)筆記_第2頁(yè)
java學(xué)習(xí)筆記_第3頁(yè)
java學(xué)習(xí)筆記_第4頁(yè)
java學(xué)習(xí)筆記_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、一、Java環(huán)境配置1、注意:JAVA_HOME 變量值的設(shè)置 必須是JDK的準(zhǔn)確安裝目錄 Path 變量值 .;%JAVA_HOME%bin; 英文 且最好不要少 注意:文件 hello.java 的具體位置 (文本文檔的格式代碼中,不能有包名。)二、Eclipse相關(guān)問(wèn)題:1、可安裝多個(gè)Eclipse 但安裝位置不能再同一目錄下2、三、關(guān)鍵字和標(biāo)識(shí)符 1、標(biāo)識(shí)符:不能以數(shù)字開(kāi)頭,不能是關(guān)鍵字,區(qū)分大小寫 (a-z、A-Z、0-9、_ 及$) 2、標(biāo)識(shí)符命名規(guī)范: 包名:所有字母小寫 例:package com.itcast 類名及接口:所有單詞首字母大寫 例:HelloWorld 變量名及

2、函數(shù)名:第一個(gè)單詞首字母小寫,其他首字母大寫 例:lastAccessTime、getTime 常量名:所有單詞字母大寫 單詞間用_ 隔開(kāi) 例:INTEGER_CACHE四、進(jìn)制轉(zhuǎn)換那么如果給計(jì)算機(jī)輸入不同的進(jìn)制數(shù)據(jù)呢代碼:五、數(shù)據(jù)類型 默認(rèn)整數(shù)類型是 int ,默認(rèn)小數(shù)類型是 double (運(yùn)算時(shí) 會(huì)自動(dòng)改變數(shù)據(jù)類型)在java中 的數(shù)據(jù)類型主要有兩種數(shù)據(jù)類型基本數(shù)據(jù)類型引用數(shù)據(jù)類型java中的八種基本數(shù)據(jù)類型:整數(shù)的數(shù)據(jù)類型:byte(字節(jié)) 8位(bit) 28 = 256 -128127short(短整型) 16bit 216 = 65536int(整型) 32bit long(長(zhǎng)整

3、型) 64bit 264 = 注意: 如果一個(gè)整數(shù)沒(méi)有加上任何的標(biāo)識(shí)的時(shí)候,那么默認(rèn)是int類型的數(shù)據(jù)。如果需要把該數(shù)據(jù)表示成一個(gè)long類型的數(shù)據(jù),那么需要加數(shù)據(jù)后面加上L表示,L是不區(qū)分大小寫的,但是建議使用大寫。疑惑:存儲(chǔ)整數(shù)可以使用四種數(shù)據(jù)類型,那么具體怎么選擇使用呢?選用數(shù)據(jù)類型的原則: 在能滿足需求的情況下,能小就小。節(jié)省內(nèi)存空間。小數(shù)的數(shù)據(jù)類型:float(單精度浮點(diǎn)型) 32bitdouble(雙精度浮點(diǎn)型) 64bit注意: 如果一個(gè)小數(shù)沒(méi)有加上任何標(biāo)識(shí)的時(shí)候,那么該小數(shù)默認(rèn)是double類型的數(shù)據(jù),如果需要表示成float類型,那么需要在小數(shù)的后面加上f表示。f不區(qū)分大小寫

4、的。布爾類型: 布爾類型只有兩個(gè) 值,true或者false。boolean 1字節(jié)或者4個(gè)字節(jié) 如果使用boolean聲明一個(gè)基本類型的變量時(shí),那么該變量占4個(gè)字節(jié),如果使用boolean聲明一個(gè)數(shù)組類型 的時(shí)候,那么每個(gè)數(shù)組的元素占一個(gè)字節(jié)。字符類型:char 2字節(jié)(16bit)八種基本數(shù)據(jù)類型:整數(shù):byte short int long 小數(shù): float double 布爾: boolean字符: char字符串的數(shù)據(jù)類型是:String 引用數(shù)據(jù)類型,不屬于基本數(shù)據(jù)類型。思考1byte b=126;問(wèn):既然數(shù)據(jù)默認(rèn)的有數(shù)據(jù)類型,那么126 默認(rèn)是int類型的,為什么存儲(chǔ)到byte

5、類型時(shí)不會(huì)報(bào)錯(cuò)呢。 126 是常量java在編譯時(shí)期會(huì)檢查該常量(每個(gè)常量)是否超出byte類型的范圍。如果沒(méi)有可以賦值。思考2:byte b=128;能否正常的編譯和運(yùn)行。該語(yǔ)句會(huì)出現(xiàn)編譯錯(cuò)誤,128超出了byte變量的存儲(chǔ)范圍,所以出現(xiàn)編譯錯(cuò)誤。思考2byte b1=3,b2=4,b;b=b1+b2;b=3+4;哪一句編譯失敗?為什么?b =3+4, 3和4都是常量,所以java在編譯時(shí)期會(huì)檢查該常量(每個(gè)常量)是否超出byte類型的范圍。如果沒(méi)有可以賦值。例如b=128+1 就無(wú)法編譯通過(guò)。b=127+1;也是無(wú)法通過(guò)。b =b1+b2 不可以,因?yàn)閎1 和b2 是變量,表達(dá)式求值時(shí),變

6、量值會(huì)自動(dòng)提升為int型,表達(dá)式結(jié)果也就成了int型,這是要賦值給byte型的b,必須進(jìn)行強(qiáng)制類型轉(zhuǎn)換了。六、運(yùn)算符 %取模 :取模的正負(fù)取決與被除數(shù)+i:前自增:先自增完畢,再運(yùn)算i+:后自增,先運(yùn)算,再進(jìn)行自增a+=b 可以想象成 a=a+b;問(wèn)題:short s1 = 1; s1= s1+1; s1+=1;問(wèn):s1= s1+1; s1+=1; 與有什么不同?對(duì)于short s1 = 1; s1 = s1 + 1; 由于s1+1運(yùn)算時(shí)會(huì)自動(dòng)提升表達(dá)式的類型,所以結(jié)果是int型,再賦值給short類型s1時(shí),編譯器將報(bào)告需要強(qiáng)制轉(zhuǎn)換類型的錯(cuò)誤。對(duì)于short s1 = 1; s1 += 1;

7、由于 += 是java語(yǔ)言規(guī)定的運(yùn)算符,java編譯器會(huì)對(duì)它進(jìn)行特殊處理,因此可以正確編譯。= (判斷是否等于)=用于比較兩個(gè)基本數(shù)據(jù)類型數(shù)據(jù)的時(shí)候,比較的是兩個(gè)變量所存儲(chǔ)的值是否一致.=用于比較兩個(gè)引用類型變量的數(shù)據(jù)時(shí)候,比較的是兩個(gè) 引用類型變量所記錄的內(nèi)存地址是否一致.負(fù)數(shù)存儲(chǔ)原理:switch語(yǔ)句要注意的事項(xiàng):1. switch語(yǔ)句使用的變量只能是byte、 char、 short、int、 String數(shù)據(jù)類型,String數(shù)據(jù)類型是從jdk7.0的時(shí)候開(kāi)始支持的。2. case后面跟 的數(shù)據(jù)必須是一個(gè)常量。3. switch的停止條件:switch語(yǔ)句一旦匹配上了其中的一個(gè)case

8、語(yǔ)句,那么就會(huì)執(zhí)行對(duì)應(yīng)的case中的語(yǔ)句代碼,執(zhí)行完畢之后如果沒(méi)有遇到break關(guān)鍵字或者是結(jié)束switch語(yǔ)句的大括號(hào),那么switch語(yǔ)句不會(huì)再判斷,按照代碼的順序從上往下執(zhí)行所有的代碼。直到遇到break或者是結(jié)束siwitch語(yǔ)句的大括號(hào)為止。4. 在switch語(yǔ)句中不管代碼的順序如何,永遠(yuǎn)都是會(huì)先判斷case語(yǔ)句,然后沒(méi)有符合的情況下才會(huì)執(zhí)行default語(yǔ)句。if-else if-else if 語(yǔ)句與switch語(yǔ)句非常的相似:switch語(yǔ)句的優(yōu)點(diǎn):switch語(yǔ)句的結(jié)構(gòu)清晰。switch缺點(diǎn):如果 判斷的條件是一個(gè)區(qū)間范圍的,使用switch操作就非常的麻煩了。對(duì)區(qū)間判斷,

9、對(duì)結(jié)果為boolean 類型判斷,使用if if的使用范圍更廣。if 除了能判斷具體數(shù)值還能判斷區(qū)間。switch 判斷區(qū)間會(huì)很費(fèi)勁的。要寫好多case 對(duì)于運(yùn)算結(jié)果是boolean型的 if 能判斷 switch 是不能實(shí)現(xiàn)的。例如:根據(jù)學(xué)生考試成績(jī)劃分ABCD A90-100 B80-89 C70-79 D60-69 E0-59。循環(huán)語(yǔ)句:public static void main(String args) int x = 0;while (x < 5) System.out.println("hello java ");如果是在dos里編譯和運(yùn)行,是不會(huì)停止

10、,除非系統(tǒng)死機(jī)。需要ctrl+c來(lái)結(jié)束。這就是真循環(huán)或者死循環(huán)。因?yàn)閤<5 永遠(yuǎn)為真。注意:要精確控制循環(huán)的次數(shù)。常犯錯(cuò)誤是是循環(huán)多執(zhí)行一次或者少執(zhí)行一次。例如會(huì)執(zhí)行101次,想要執(zhí)行100次,要么是count初始值為1,然后count<=100要么是count初始值為0,coung<100while循環(huán)語(yǔ)句要注意的事項(xiàng):1. while循環(huán)語(yǔ)句一般是通過(guò)一個(gè)變量控制其循環(huán)的次數(shù)。2. while循環(huán)語(yǔ)句的循環(huán)體代碼如果只有一個(gè)語(yǔ)句的時(shí)候,那么可以省略大括號(hào)。但是也是不建議大家省略。3. while循環(huán)語(yǔ)句的判斷條件后面不能跟有分號(hào),否則會(huì)影響到執(zhí)行的效果。while:先判斷

11、條件,只有條件滿足才執(zhí)行循環(huán)體。do while: 先執(zhí)行循環(huán)體,再判斷條件,條件滿足,再繼續(xù)執(zhí)行循環(huán)體。簡(jiǎn)單一句話:do while:無(wú)論條件是否滿足,循環(huán)體至少執(zhí)行一次。注意一個(gè)細(xì)節(jié)do while 后面的分號(hào); for 和while的區(qū)別:public static void main(String args) for (int x = 0; x < 5; x+) System.out.println("hello java");System.out.println(x); /x cannot be resolved to a variableint y = 0

12、;while (y < 5) System.out.println("hello world");y+;System.out.println(y);錯(cuò)誤解釋 x 為什么會(huì)找不到,注意了變量的作用域,也就是變量的作用范圍。x 只在 for 循環(huán)的大括號(hào)內(nèi)有效,出了這個(gè)區(qū)域,就無(wú)效了.在內(nèi)存中就消失了。x消失后,仍要訪問(wèn)它,肯定會(huì)報(bào)錯(cuò)的。y 就不一樣了,y 是定義在while 外的。while循環(huán)完畢仍有效 while的初始化 動(dòng)作在外邊,循環(huán)結(jié)束后y 仍然存在。當(dāng)定義的y 只作為循環(huán)增量存在的話的,循環(huán)完畢后y就沒(méi)有用了,但是y還是占著一塊內(nèi)存。所以,如果定義的變量只作

13、為循環(huán)增量存在的話,就用for 循環(huán)可以節(jié)約內(nèi)存。其實(shí)for 和while 是可以互換的。最后總結(jié)1、for里面的兩個(gè)表達(dá)式運(yùn)行的順序,初始化表達(dá)式只讀一次,判斷循環(huán)條件,為真就執(zhí)行循環(huán)體,然后再執(zhí)行循環(huán)后的操作表達(dá)式,接著繼續(xù)判斷循環(huán)條件,重復(fù)找個(gè)過(guò)程,直到條件不滿足為止。2、while與for可以互換,區(qū)別在于for為了循環(huán)而定義的變量在for循環(huán)結(jié)束時(shí)就在內(nèi)存中釋放。而while循環(huán)使用的變量在循環(huán)結(jié)束后還可以繼續(xù)使用。3、最簡(jiǎn)單無(wú)限循環(huán)格式:while(true) , for(;),無(wú)限循環(huán)存在的原因是并不知道循環(huán)多少次,而是根據(jù)某些條件,來(lái)控制循環(huán)。推薦使用while(true) w

14、hile(true)for(;)for(;true;)for(;)語(yǔ)句的特殊性:利用break跳出循環(huán)轉(zhuǎn)義字符名稱UnicodebBackspace (退格鍵)u0008tTab (Tab鍵盤)u0009nLinefeed (換行)u000ArCarriage Return(回車)u000DBackslash (反斜杠)u005C'Single Quote (單引號(hào))u0027"Double Quote (雙引號(hào))u0022轉(zhuǎn)義字符:特殊字符使用”把其轉(zhuǎn)化成字符的本身輸出,那么使用”的字符稱作為轉(zhuǎn)移字符。需求: 在控制臺(tái)上打印一個(gè) hello" world 常見(jiàn)的轉(zhuǎn)

15、義字符有:bBackspace (退格鍵)tTab 制表符(制表符的作用就是為了讓一列對(duì)齊) 一個(gè)tab一般等于四個(gè)空格。n換行r回車 把光標(biāo)移動(dòng)到一行的首位置上。注意: 如果是在windows系統(tǒng)上操作文件的時(shí)候需要換行,是需要rn一起使用的。如果是在其他的操作系統(tǒng)上需要換行,僅需要n即可。break、continue關(guān)鍵字:break適用范圍:for循環(huán) 、 switch兩種循環(huán)語(yǔ)句。break作用:1. break用于switch語(yǔ)句的作用是結(jié)束一個(gè)switch語(yǔ)句。2. break用于循環(huán)語(yǔ)句中的作用是結(jié)束當(dāng)前所在的循環(huán)語(yǔ)句。3. 不要再break語(yǔ)句之后,編寫其他語(yǔ)句,永遠(yuǎn)都執(zhí)行不到,編譯報(bào)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論