版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Java基礎(chǔ)部分
第一章初識(shí)Java
1.1Java簡(jiǎn)介
1、java是一種跨平臺(tái)的、面向?qū)ο蟮某绦蛟O(shè)計(jì)語言。
2、java是一種通過解釋方式來執(zhí)行的語言,其語法規(guī)則和C++類似。
3、一次編寫,到處運(yùn)行。
4、Java語言編寫的程序既是編譯型的,又是解釋型的。
5、Java程序的編譯和運(yùn)行過程
6、按應(yīng)用范圍分為3個(gè)版本:JavaSE、JavaEE、JavaME即SunONE(OpenNetEnvironment)
體系。
7、JavaSE:java的標(biāo)準(zhǔn)版,主要用于桌面應(yīng)用程序的開發(fā),同時(shí)也是java的基礎(chǔ),它包
含Java語言基礎(chǔ)、JDBC(java數(shù)據(jù)庫連接性)操作、I/O(輸入/輸出)、網(wǎng)絡(luò)通信、多線
程技術(shù)。
JavaEE:java的企業(yè)版,主要用于開發(fā)企業(yè)級(jí)分布式的網(wǎng)絡(luò)程序,其核心為EJB(企業(yè)
Java組件模型)。
JavaME:主要用于嵌入式系統(tǒng)開發(fā)
8^API的全稱是ApplicationProgrammingInterface即應(yīng)用程序編程接口。
主要包括類的繼承結(jié)構(gòu)、成員變量利成員方、構(gòu)造方法、靜態(tài)成員的詳細(xì)說明和描述信息。
9、java與C++相比,Java語言簡(jiǎn)潔得多,而且提高了可靠性,除去了最大的程序錯(cuò)誤根源,
此外它還有較高的安全性。
1.2Java語言的特性
1、簡(jiǎn)單
(1)語法規(guī)則與C++類似。
(2)java語言對(duì)C++進(jìn)行了簡(jiǎn)化和提高。
例如:Java使用接口取代了多重繼承,并取消了指針,因?yàn)橹羔樅投嘀乩^承通常使程序變
得復(fù)雜。Java語言還通過實(shí)現(xiàn)垃圾自動(dòng)收集,大大簡(jiǎn)化了程序設(shè)計(jì)人員的資源釋放管理工
作。
(3)java提供了豐富的類庫和API文檔以及第三方開發(fā)包。
2、面向?qū)ο?/p>
是java語言的基礎(chǔ),java語言最外部的數(shù)據(jù)類型是對(duì)象,所有的元素都要通過類和對(duì)象來
訪問。
3、分布性
Java語言的分布性包括操作分布和數(shù)據(jù)分布。
4、可移植性
5、解釋型
6、安全性
7、健壯性
8、多線程
多線程機(jī)制能夠使應(yīng)用程序在同一時(shí)間并行執(zhí)行多項(xiàng)任務(wù),而且相應(yīng)的同步機(jī)制可以保證不
同線程能夠正確地共享數(shù)據(jù)。使用多線程,可以帶來更好的交互能力和實(shí)時(shí)行為。
9、高性能
10、動(dòng)態(tài)
1.3搭建Java環(huán)境
1.3.1JDK的下載
1.3.2配置環(huán)境變量
1.4第一個(gè)Java程序
publicclassHellojava{
publicstaticvoidmain(String[]args){
System,out.println("HelloJava");
)
)
第二章熟悉Eelipse開發(fā)工具
2.1熟悉EcIipse
1>IDE集成開發(fā)工具
2、Eclipse是由IBM公司投資開發(fā)的集成開發(fā)工具,它基于Java語言編寫,并且是開放源
代碼的、可擴(kuò)展的集成開發(fā)工具。
3、在學(xué)習(xí)Swing程序設(shè)計(jì)之前,必須使用控制臺(tái)實(shí)現(xiàn)與程序的交互。
2.2使用Eelipse
1、編輯器的主要功能都是完成Java程序、XML配置等代碼編寫或可視化設(shè)計(jì)工作。
2、Java編輯器以不同樣式或顏色顯示Java語法,主要包括:程序代碼注釋、Javadoc注釋、
Java關(guān)鍵字。
2.3程序調(diào)試
1、使用Eclipse的Java調(diào)試器需要設(shè)置程序斷點(diǎn),然后使用單步調(diào)試分別執(zhí)行程序代碼的
每一行。
2、設(shè)置斷點(diǎn)是程序調(diào)試中必不可少的手段,Java調(diào)試器每次遇到程序斷點(diǎn)時(shí)都會(huì)將當(dāng)前線
程掛起,即暫停當(dāng)前程序的運(yùn)行。
第三章Java語言基礎(chǔ)
3.1Java主類結(jié)構(gòu)
1、Java語言是面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,java程序的基本組成單元是類,類體中包括屬性
和方法兩部分。
2、每一個(gè)應(yīng)用程序都必須包含一個(gè)main。方法,含有main()方法的類稱為主類。
3、Package為包的關(guān)鍵字。Import關(guān)鍵字導(dǎo)入相關(guān)的類。
4、類的屬性稱之為類的全局變量(成員變量),將方法中的屬性稱之為局部變量。全局變量
聲明在類體中,局部變量聲明在方法體中。
5、Public、static>void分別是main()方法的權(quán)限修飾符、靜態(tài)修飾符和返回值修飾符。
main()方法是程序開始執(zhí)行的位置。
3.2基本數(shù)據(jù)類型
1、在java中有8種基本數(shù)據(jù)類型來存儲(chǔ)數(shù)值、字符和布爾值,如圖:
"整數(shù)類型(byte、short、int^long)
'數(shù)值型y
基本數(shù)據(jù)類型<字符型I浮點(diǎn)型(float、double)
,布爾型
2、整數(shù)類型用來存儲(chǔ)整數(shù)數(shù)值,既沒有小數(shù)部分的數(shù)值。
十進(jìn)制:不能以0作為十進(jìn)制數(shù)的開頭。
八進(jìn)制:必須以0開頭。
十六進(jìn)制:必須以O(shè)x或0X開頭。
3、浮點(diǎn)類型表示有小數(shù)部分的數(shù)字。在默認(rèn)情況下小數(shù)都看作double型。
4、字符類型(char)用于存儲(chǔ)單個(gè)字符,占用16位(兩個(gè)字節(jié))的內(nèi)存空間。定義字符型
變量時(shí),以單引號(hào)表示。以雙引號(hào)表示的是字符串
5、布爾類型又稱邏輯類型,通過關(guān)鍵字boolean來定義布爾類型變量,只有true和false
兩個(gè)值,分別代表布爾邏輯中的‘真'和‘假
6、數(shù)據(jù)類型
數(shù)據(jù)類型內(nèi)存空間(8位等于1字節(jié))
byte8位
short16位
int32位
long64位
char16位
float32位
double64位
7,轉(zhuǎn)義字符
\t垂直制表符,將光標(biāo)移動(dòng)下一個(gè)制表符的位置。
\n換行
\r回車
\b退格
\f換頁
3.3變量與常量
1、Java語言規(guī)定標(biāo)識(shí)符有任意順序的字母、下劃線、美元符號(hào)和數(shù)字組成,并且第一個(gè)字
符不能是數(shù)字。標(biāo)識(shí)符不能是java中的保留關(guān)鍵字.Java語言中標(biāo)識(shí)符中的字母是嚴(yán)格區(qū)
分大小寫的。
2、系統(tǒng)的內(nèi)存可分為3個(gè)區(qū)域,即系統(tǒng)區(qū)(0S)、程序區(qū)(Program)和數(shù)據(jù)區(qū)(Data)。
3、在程序運(yùn)行過程中一直不會(huì)改變的量稱為常量,通常也稱為“final變量”。常量在整個(gè)
程序中只能被賦值一次。
聲明常量的標(biāo)準(zhǔn)語法如下:
Final數(shù)據(jù)類型常量名稱口值]
4、變量的有效范圍是指程序代碼能夠訪問該變量的區(qū)域,若超出該區(qū)域,則在編譯時(shí)會(huì)出
現(xiàn)錯(cuò)誤。
5、變量按“有效范圍”可分為“成員變量”和“局部變量”。在類體中所定義的變量被稱為
成員變量,成員變量在整個(gè)類中都有效。成員變量又可分為靜態(tài)變量和實(shí)例變量。
6、在類的方法體中定義的變量稱為局部變量。局部變量只在當(dāng)前代碼塊中有效。
7、局部變量可與成員變量的名字相同,此時(shí)成員變量將被隱藏,即這個(gè)成員變量在此方法
中暫時(shí)失效。
8、變量的有效范圍如圖:
3.4運(yùn)算符
1、賦值運(yùn)算符“=":二元運(yùn)算符,其功能是將右方操作數(shù)所含的值賦給左方的操作數(shù)。若
含有多個(gè)“=”運(yùn)算符,會(huì)從最右方的開始處理。
2、算術(shù)運(yùn)算符:Java中的算術(shù)運(yùn)算符主要有+-*/%都為二元運(yùn)算符。
3、自增和自減運(yùn)算符都為單目運(yùn)算符
++a(—a)表示在使用變量a之前,先使a的值加(減)1?
a++(a-)表示在使用變量a之后,使a的值加(減)1。
4、比較運(yùn)算符:><==>=<=!=都屬于二元運(yùn)算符,其結(jié)果是boolean型。
5、邏輯運(yùn)算符包括&(&&)(邏輯與)、||(邏輯或)、?。ㄟ壿嫹牵?。邏輯運(yùn)算符的操作元必須
是boolean型數(shù)據(jù)。除“心是一元運(yùn)算符之外,其他都是二元運(yùn)算符。
6、邏輯運(yùn)算符“&&”與都表示“邏輯與”,它們之間的區(qū)別是:使用邏輯運(yùn)算符
會(huì)判斷兩個(gè)表達(dá)式;而邏輯運(yùn)算符“&&”則是針對(duì)boolean類型的類進(jìn)行判斷,當(dāng)?shù)谝粋€(gè)表
達(dá)式為false時(shí)則不去判斷第二個(gè)表達(dá)式,直接輸出結(jié)果。
7、整數(shù)數(shù)據(jù)在內(nèi)存是以二進(jìn)制的形式表示。
8、位運(yùn)算符:左邊最高位的符號(hào)位,最高位是0表示正數(shù),若為1則表示負(fù)數(shù)。負(fù)數(shù)采用
補(bǔ)碼表示
(1)“按位與”運(yùn)算雙目運(yùn)算符
其運(yùn)算法則:如果兩個(gè)整型數(shù)據(jù)對(duì)應(yīng)為都是1,則結(jié)果位才是1,否則為0。
(2)“按位或"運(yùn)算“|"雙目運(yùn)算符
其運(yùn)算法則:如果兩個(gè)操作數(shù)對(duì)應(yīng)為都是0,則結(jié)果位才是0,否則為1。
(3)“按位取反”運(yùn)算單目運(yùn)算符
將操作數(shù)二進(jìn)制中的1修改為0,0修改為1。
(4)“按位異或"運(yùn)算”2,雙目運(yùn)算符
其運(yùn)算法則:當(dāng)兩個(gè)操作數(shù)二進(jìn)制表示相同時(shí),結(jié)果為0,否則為1。若兩個(gè)操作數(shù)的
精度不同,則結(jié)果數(shù)的精度與精度高的操作數(shù)相同。
(5)移位操作
(6)?左移左邊移空的部分補(bǔ)0
?右移如果最高位是0,右移空的位就填入0;如果最高位是1,右移空的位就填
入1
?>無符號(hào)右移無論最高位是0還是1,左側(cè)被移空的高位都填入0。
(7)三元運(yùn)算符
其使用格式:條件式?值1:值2
三元運(yùn)算符等價(jià)于if....else語句
3.5數(shù)據(jù)類型轉(zhuǎn)換
1、數(shù)據(jù)類型轉(zhuǎn)換有兩種方式,即隱式轉(zhuǎn)換與顯式轉(zhuǎn)換。
2、從低級(jí)類型向高級(jí)類型的轉(zhuǎn)換,系統(tǒng)將自動(dòng)執(zhí)行,這種類型的轉(zhuǎn)換稱為隱式轉(zhuǎn)換。
3、當(dāng)把高精度的變量的值賦給低精度的變量時(shí),必須使用顯式類型轉(zhuǎn)換運(yùn)算(又稱強(qiáng)制類
型轉(zhuǎn)換)??赡軐?dǎo)致精度損失。只要是boolean類型以外其他基本類型之間的轉(zhuǎn)換,全部都
能以顯式類型轉(zhuǎn)換的方法達(dá)到。
語法如下:
(類型名)要轉(zhuǎn)換的值
3.6代碼注釋與編碼規(guī)范
1、在程序代碼中適當(dāng)?shù)靥砑幼⑨尶梢蕴岣叱绦虻目勺x性和可維護(hù)性。
2、Java語言提供3種添加注釋的方法,分別為單行注釋、多行注釋和文檔注釋。
3、軟件編碼規(guī)范中提到“可讀性第一”,“效率第二”。
注:String類型不是Java語言的基本數(shù)據(jù)類型
第四章流程控制
4.1復(fù)合語句
1、Java語言的復(fù)合語句是以整個(gè)塊區(qū)位單位的語句,所以又稱為塊語句。
2、復(fù)合語句以整個(gè)塊為單位,可以用在任何一個(gè)單獨(dú)語句可以用到的地方,并且在復(fù)合語
句中可以嵌套復(fù)合語句。
4.2條件語句
1、條件語句包括if條件語句與switch多分支語句。
2、If條件語句可分為簡(jiǎn)單的if條件語句、if...else語句和if...elseif多分支語句。
3、If語句只執(zhí)行條件為真的命令語句,其他語句都不會(huì)執(zhí)行。
4、Switch語句中表達(dá)式的值必須是整型、字符型或字符串型。
5、Switch語句首先計(jì)算表達(dá)式的值,如果表達(dá)式的值和某個(gè)case后面的變量值相同,則
執(zhí)行該case語句后的若干個(gè)語句直到break語句為止。若沒有一個(gè)常量的值與表達(dá)式的值
相同,則執(zhí)行default后面的語句。若沒有default語句則不再做任何處理。
6、同一個(gè)switch語句,case的常量值必須互不相同。
7、在switch語句中,case語句后常量表達(dá)式的值可以為整數(shù),但絕不可以是實(shí)數(shù)。
4.3循環(huán)語句
1、循環(huán)語句就是在滿足一定條件的情況下反復(fù)執(zhí)行某一個(gè)操作。在Java中提供了3種常用
的循環(huán)語句,分別是while循環(huán)語句、do...while循環(huán)語句和for循環(huán)語句。
2>While語句也稱條件判斷語句,它的循環(huán)方式為利用一個(gè)條件來控制是否要繼續(xù)反復(fù)執(zhí)
行這個(gè)語句。
3、do...while循環(huán)語句與while循環(huán)語句之間的區(qū)別是while語句為先判斷條件是否成立
再執(zhí)行循環(huán)體,而do...while循環(huán)語句則先執(zhí)行?次循環(huán)后,再判斷條件是否成立。也就
是說do...while循環(huán)語句中“{}”中的程序段至少要被執(zhí)行一次。
4、for語句
for(表達(dá)式1;表達(dá)式2;表達(dá)式3)
(
語句序列
}
表達(dá)式1:初始化表達(dá)式,負(fù)責(zé)完成變量的初始化。
表達(dá)式2:循環(huán)條件表達(dá)式,值為boolean型的表達(dá)式,指定循環(huán)條件。
表達(dá)式3:循環(huán)后操作表達(dá)式,負(fù)責(zé)修整變量,改變循環(huán)條件。
第五章字符串
5.1String類
1、在Java語言中將字符串作為對(duì)象來處理,可以通過java.lang包中的String類來創(chuàng)建
字符串對(duì)象。
2、在Java語言中字符串必須包含在一對(duì)雙引號(hào)("")之內(nèi),不能作為其他數(shù)據(jù)類型來使
用。
3、字符串變量的語法格式:
Stringstr=[null]
(1)String:指定該變量為字符串類型。
(2)str:任意有效的標(biāo)識(shí)符,表示字符串變量的名稱。
(3)null:如果省略null,表示str變量時(shí)未初始化的狀態(tài),否則表示聲明的字符串的值
等于null。
4、聲明字符串變量必須經(jīng)過初始化才能使用,否則編譯器會(huì)報(bào)出“變量未被初始化錯(cuò)誤”。
5、String類的構(gòu)造方法如下:
(1)String(chara[])方法用一個(gè)字符數(shù)組a創(chuàng)建String對(duì)象。
(2)String(chara[],intoffset,intlength)
提取字符數(shù)組a中的-?部分創(chuàng)建一個(gè)字符串對(duì)象。參數(shù)offset表示開始截取字符串的
位置,length表示截取字符串的長(zhǎng)度。
(3)String(chara[]value)
該構(gòu)造方法可分配一個(gè)新的String對(duì)象,使其表示字符數(shù)組參數(shù)中所有元素連接的結(jié)
果。
5.2連接字符串
1,使用“+”運(yùn)算符可實(shí)現(xiàn)多個(gè)字符串的功能?!?”運(yùn)算符可以連接多個(gè)運(yùn)算符并產(chǎn)生一個(gè)
String對(duì)象。(“+”運(yùn)算符是連接符)
2、Java中一句相連的字符串不能分開在兩行中寫,如果要寫成兩行必須使用“+”運(yùn)算符
連接。
3、字符串也可以同其他基本數(shù)據(jù)類型進(jìn)行連接。如果字符串同這些數(shù)據(jù)類型數(shù)據(jù)進(jìn)行連接,
會(huì)將這些數(shù)據(jù)直接轉(zhuǎn)換成字符串。
5.3獲取字符串信息
1、使用String類的length。方法可獲取聲明的字符串對(duì)象的長(zhǎng)度(包括字符串中的空格)。
語法如下:str.length();
2、indexOf(Strings)方法返回的是搜索的字符或字符串首次出現(xiàn)的位置,如果沒有檢索到
字符串s,該方法的返回值是-1。
語法如下:str.indexOf(substr);
3、lastlndexOf(Stringstr)方法用于返回指定字符串最后一次出現(xiàn)的索引位置,如果沒有
檢索到字符串str,該方法的返回值是T。
語法如下:str.lastlndexOf(substr);
4、如果lastlndexOf。方法中的參數(shù)是空字符串""(注意沒有空格),則返回的結(jié)果與調(diào)
用該字符串length。方法的返回結(jié)果相同。
5、使用charAt()方法可將指定索引處的字符返回。
語法如下:str.charAt(intindex);
5.4字符串操作
1、通過String類的substring。方法可對(duì)字符串進(jìn)行截取。都是利用字符串的卜標(biāo)進(jìn)行截
取,且應(yīng)明確字符串下標(biāo)是從0開始的。
2、substring(intbeginlndex)
該方法返回的是從指定的索引位置開始截取直到該字符串結(jié)尾的子串。
語法如下:str.substring(intbeginlndex);
3、substring(intbeginlndex,endindex)
該方法返回的是從字符串某一個(gè)索引位置開始截取至某一個(gè)索引位置結(jié)束的子串(不包
括最后一位)。
語法如下:str.substring(intbeginlndex,endindex);
4、trim。方法返回字符串的副本,忽略前導(dǎo)空格和尾部空格。
語法如下:str.trim();
5、replace。方法可實(shí)現(xiàn)將指定的字符或字符串替換成新的的字符或字符串。
語法如下:str.replace(chaeoldChar,charnewChar);
6、startsWith()方法與endsWith()方法分別用于判斷字符串是否以指定的內(nèi)容開始或結(jié)
束。這兩個(gè)方法返回值都為boolean類型。
7、對(duì)字符串對(duì)象進(jìn)行比較不能簡(jiǎn)單地使用比較運(yùn)算符“==",因?yàn)楸容^運(yùn)算符比較的是兩個(gè)
字符串的地址是否相同。即使兩個(gè)字符串的內(nèi)容相同,兩個(gè)對(duì)象的內(nèi)存地址也不不同的,使
用比較運(yùn)算符依然返回的是false。
8、要比較兩個(gè)字符串內(nèi)容是否相等,應(yīng)使用equals。方法和equalsIgnoreCaseO方法。
9、equals。方法如果兩個(gè)字符串具有相同的字符和長(zhǎng)度,則使用equals()方法進(jìn)行比較
時(shí),返回true。(區(qū)分大小寫)
語法如下:str.equals(Stringotherstr);
10、equalsIgnoreCaseO方法在忽略大小寫的情況下比較兩個(gè)字符串是否相等,返回結(jié)果
為boolean類型。
語法如下:str.equalsIgnoreCase(Stringotherstr);
11、compareToO方法為按字典順序比較兩個(gè)字符串,該比較基于字符串的各個(gè)字符的
Unicode值。如果按字典順序此String對(duì)象位于參數(shù)字符串之前,則比較結(jié)果為一個(gè)負(fù)整
數(shù);如果按字典順序此String對(duì)象位于參數(shù)字符串之后,則比較結(jié)果為一個(gè)正整數(shù);如果
這兩個(gè)字符串相等,則結(jié)果為0。
語法如下:pareTo(Stringotherstr);
注:compareToO方法只有在equals(Object)方法返回true時(shí)才返回0。
12、toLowerCaseO方法該方法將String轉(zhuǎn)換為小寫。
語法如下:str.toLowerCase();
13、toUpperCaeO方法該方法將String轉(zhuǎn)換為大寫。
語法如下:str.toUpperCae();
14、使用split。方法可以使字符串按指定的分割字符或字符串對(duì)內(nèi)容進(jìn)行分割,并將分割
后的結(jié)果存放在字符串?dāng)?shù)組中。
15、split(Stringsign)該方法可根據(jù)給定的分割符對(duì)字符串進(jìn)行拆分。
語法如下:str.split(Stringsign);
16、split(Stringsign,intlimit)該方法可根據(jù)給定的分割符對(duì)字符串進(jìn)行拆分,并
限定拆分的次數(shù)。
語法如下:str.split(Stringsign,intlimit);
5.5格式化字符串
1、String類的靜態(tài)format。方法用于創(chuàng)建格式化的字符串。
5.6使用正則表達(dá)式
5.7字符串生成器
1、append。方法
該方法用于向字符串生成器中追加內(nèi)容。
語法如下:append(content);其中content表示要追加到字符串生成器中的內(nèi)容,可
以是任何類型的數(shù)據(jù)或者其他對(duì)象。
2、insert(intoffset,arg)方法
該方法用于向字符串生成器中的指定位置插入數(shù)據(jù)內(nèi)容。
語法如下:insert(intoffset,arg);
3、delete(intstart,intend)方法
移除此序列的子字符串中的字符。該子字符串從指定的start處開始。一直到索引end-1
處的字符,如果不存在這種字符,則一直到序列尾部。如果start等于end在,則不發(fā)生任
何更改。
語法如下:delete(intstart,intend)
第六章數(shù)組
1、數(shù)組是最為常見的一種數(shù)據(jù)結(jié)構(gòu),是相同類型的、用同一標(biāo)識(shí)符封裝到一起的基本類型
數(shù)據(jù)序列或?qū)ο笮蛄小?/p>
2、數(shù)組是具有相同數(shù)據(jù)類型的一組數(shù)據(jù)的集合。在Java中同樣將數(shù)組看作一個(gè)對(duì)象,雖然
基本數(shù)據(jù)類型不是對(duì)象,但由基本數(shù)據(jù)類型組成的數(shù)組卻是對(duì)象。
3、數(shù)組作為對(duì)象允許使用new關(guān)鍵字進(jìn)行內(nèi)存分配。
4、一維數(shù)組的創(chuàng)建方式:
(1)先聲明,再用new運(yùn)算符進(jìn)行內(nèi)存分配
數(shù)組元素類型數(shù)組名字口;
數(shù)組元素類型口數(shù)組名字;
數(shù)組元素類型決定了數(shù)組的數(shù)據(jù)類型。
語法格式如下:數(shù)組名字=new數(shù)組元素類型[數(shù)組元素的個(gè)數(shù)];
注:使用new關(guān)鍵字分配數(shù)組時(shí),必須指定數(shù)組元素的類型和數(shù)組元素個(gè)數(shù),即數(shù)組的長(zhǎng)度。
數(shù)組的卜標(biāo)從0開始。使用new關(guān)鍵字為數(shù)組分配內(nèi)存時(shí),整型數(shù)組中各個(gè)元素的初始值都
為0.
(2)聲明的同時(shí)為數(shù)組分配內(nèi)存
語法如下:數(shù)組元素類型數(shù)組名=new數(shù)組元素類型[數(shù)組元素的個(gè)數(shù)];
5、二維數(shù)組的創(chuàng)建
(1)先聲明,再用new運(yùn)算符進(jìn)行內(nèi)存分配
數(shù)組元素類型數(shù)組名字口口;
數(shù)組元素類型口□數(shù)組名字;
(2)聲明的同時(shí)為數(shù)組分配內(nèi)存
語法格式如下:typearrayname[][]={valuel,valuel,value2....value);
type:數(shù)組數(shù)據(jù)類型。
arrayname:數(shù)組名稱,?個(gè)合法的標(biāo)識(shí)符。
value:數(shù)組中各元素的值。
6、遍歷數(shù)組就是獲取數(shù)組中的每個(gè)元素。通常遍歷數(shù)組都是使用for循環(huán)來實(shí)現(xiàn)。
遍歷二維數(shù)組需要使用雙層for循環(huán),通過數(shù)組的length屬性可獲得數(shù)組的長(zhǎng)度。
7、數(shù)組中的元素定義完成后,可通過Arrays類的靜態(tài)方法fill。來對(duì)數(shù)組中的元素進(jìn)行
替換。
8、通過Arrays類的靜態(tài)sort。方法可以實(shí)現(xiàn)對(duì)數(shù)組的排序??蓪?duì)任意類型的數(shù)組進(jìn)行升
序排序。
語法如下:Arrays,sort(object);
9、Java中的String類型數(shù)組的排序算法是根據(jù)字典編排順序排序的,因此數(shù)字排在字母
前面,大寫字母排在小寫字母前面。
10、copyOfO方法是復(fù)制數(shù)組至指定的長(zhǎng)度。
語法如下:copy0f(arr,intnewlength);
arr:要進(jìn)行復(fù)制的數(shù)組。
newlength:int型常量,值復(fù)制后的新數(shù)組的長(zhǎng)度(整型數(shù)組填充0,char型數(shù)
組填充null)?
11>copyOfRange()方法則將指定數(shù)組的指定長(zhǎng)度復(fù)制到一個(gè)新數(shù)組中。
語法如下:copyOfRange(arr,intformlndex,inttolndex);
arr:要進(jìn)行復(fù)制的數(shù)組。
formindex:指定開始復(fù)制數(shù)組的索引位置。
tolndex:要復(fù)制范圍的最后索引位置。新數(shù)組不包括索引是tolndex的元素。
12、Arrays類的binarySearch()方法,可使用二分搜索法搜索指定數(shù)組,以獲得指定對(duì)象。
該方法返回要搜索元素的索引值。
13、binarySearch(Object[].Objectkey)
語法如下:binarySearch(Object[]a.Objectkey)
a:是搜索的數(shù)組。
Key:要搜索的值。
binarySearch(Object[].,intformindex,inttolndex,Objectkey)
該方法在指定的范圍之內(nèi)檢索某一元素。
a:是搜索的數(shù)組。
formindex:指定范圍的開始處索引(包含)。
tolndex:指定范圍的結(jié)束處索引(不包含)。
Key:要搜索的元素。
14、必須在進(jìn)行調(diào)用之前對(duì)數(shù)組進(jìn)行排序(通過sort。方法)。如果沒有對(duì)數(shù)組進(jìn)行排序,
則結(jié)果是不確定的。
15、冒泡排序的基本思想:是對(duì)比相鄰的元素值,如果滿足條件就交換元素值,把較小的元
素移動(dòng)到數(shù)組前面,把大的元素移動(dòng)到數(shù)組后面,這樣較小的元素就像氣泡一樣從底部上升
到頂部。(由雙層循環(huán)實(shí)現(xiàn))
16、直接選擇排序的基本思想:是將指定排序的位置與其他數(shù)組元素分別對(duì)比,如果滿足條
件就交換元素。
注意:這里區(qū)別冒泡排序,不是交換相鄰元素,而是把滿足條件的元素與指定的排
序位置交換,這樣排序好的位置逐漸擴(kuò)大,最后整個(gè)數(shù)組都成為已排序好的格式。
17、反轉(zhuǎn)排序的基本思想:把數(shù)組最后一個(gè)元素與第一個(gè)元素替換,倒數(shù)第二個(gè)元素與第二
個(gè)元素替換,依此類推,直到把所有數(shù)組元素反轉(zhuǎn)替換。
第七章類和對(duì)象
1、面向?qū)ο笤O(shè)計(jì)實(shí)質(zhì)就是對(duì)現(xiàn)實(shí)世界的對(duì)象進(jìn)行建模操作。
2、類實(shí)質(zhì)上就是封裝對(duì)象屬性和行為的載體,而對(duì)象則是類抽象出的一個(gè)實(shí)例。
3、具有相同屬性和行為的一類實(shí)體被稱為類。
4、在Java語言中,類中對(duì)象的行為時(shí)以方法的形式定義的,對(duì)象的屬性是以成員變量的形
式定義的,而類包括對(duì)象的屬性和行為。
5、面向?qū)ο蟪绦蛟O(shè)計(jì)具有以下特點(diǎn):封裝性、繼承性、多態(tài)性。
6、封裝是面向?qū)ο缶幊痰暮诵乃枷耄瑢?duì)象的屬性和行為封裝起來,其載體就是類,類通
常對(duì)客戶隱藏其實(shí)現(xiàn)細(xì)節(jié),這就是封裝的思想。
7、繼承性主要是利用特定對(duì)象之間的共有屬性。父類、超類/子類
8、將父類對(duì)象應(yīng)用于子類的特征就是多態(tài),多態(tài)的實(shí)現(xiàn)不依賴于具體類,而是依賴于抽象
類和接口。
9、在Java語言中對(duì)象的屬性以成員變量的形式存在,對(duì)象的方法以成員方法的形式存在。
10、在Java語言中使用class關(guān)鍵字來定義類。
11、定義成員方法的語法格式如下:
權(quán)限修飾符返回值類型方法名(參數(shù)類型參數(shù)名){
.....〃方法體
return返回值;
)
12、如果方法需要返回值可以在方法體中使用return關(guān)鍵字,使用這個(gè)關(guān)鍵字后,方法的
執(zhí)行將被終止。
13>Java中的成員方法無返回值可以使用void關(guān)鍵字表示。
14、如果一個(gè)方法中含有與成員變量同名的局部變量,則方法中對(duì)這個(gè)變量的訪問以局部變
量進(jìn)行。
15、Java中的權(quán)限修飾符主要包括private、public和protected,這些修飾符控制著對(duì)類
和類的成員變量以及成員方法的訪問。
16、Java語言中的修飾符權(quán)限
訪問包位置類修飾符
privateprotectedpublic
本類可見可見可見
同包其他類或子類不可見可見可見
其他包的類或子類不可見不可見可見
17、如果在成員方法內(nèi)定義一個(gè)變量,那么這個(gè)變量被稱為局部變量。
18、局部變量在方法被執(zhí)行時(shí)創(chuàng)建,在方法執(zhí)行結(jié)束時(shí)被銷毀。局部變量在使用時(shí)必須進(jìn)行
賦值操作或被初始化,否則會(huì)出現(xiàn)編譯錯(cuò)誤。
19、可以將局部變量的有效范圍稱為變量的作用域,局部變量的有效范圍從該變量的聲明開
始到該變量的結(jié)束為止。
20、在相互不嵌套的作用域中可以同時(shí)聲明兩個(gè)名稱和類型相同的局部變量。
21、在Java語言中規(guī)定使用this關(guān)鍵字來代表本類對(duì)象的引用,this關(guān)鍵字被隱式地用
于引用對(duì)象的成員變量和方法。
22、構(gòu)造方法是一個(gè)與類同名的方法,對(duì)象的創(chuàng)建就是通過構(gòu)造方法完成的。每當(dāng)類實(shí)例化
一個(gè)對(duì)象時(shí),類都會(huì)自動(dòng)調(diào)用構(gòu)造方法。
23、構(gòu)造方法的特點(diǎn)如下:
(1)構(gòu)造方法沒有返回值。
(2)構(gòu)造方法的名稱要與本類的名稱相同。
24、在定義構(gòu)造方法時(shí),構(gòu)造方法沒有返回值,但這與普通沒有返回值的方法不同,普通沒
有返回值的方法使用publicvoidmethodExO這種形式進(jìn)行定義,但構(gòu)造方法并不需要使
用void關(guān)鍵字進(jìn)行修飾。
25、構(gòu)造方法的定義語法格式如下:
Publicbook(){
//...構(gòu)造方法體
}
26、在無參構(gòu)造方法中可以使用this關(guān)鍵字調(diào)用有參構(gòu)造方法,但使用這種構(gòu)造方式需要
主要的是只可以在無參構(gòu)造方法中的第一句使用this調(diào)用有參構(gòu)造方法。
27、由static修飾的變量、常量和方法被稱做靜態(tài)變量、常量和方法。
28、在Java語言中對(duì)靜態(tài)方法有兩點(diǎn)規(guī)定:
(1)在靜態(tài)方法中不可以使用this美鍵字。
(2)在靜態(tài)方法中不可以直接調(diào)用非靜態(tài)方法。
29、在Java中規(guī)定不能將方法體的局部變量聲明為static的。
30、主方法是類的入口點(diǎn),它定義了程序從何處開始;主方法提供對(duì)程序流向的控制,Java
編譯器通過主方法來執(zhí)行程序。主方法的語法如下:
Publicstaticvoidmain(String[]args){
〃方法體
)
特性:主方法是靜態(tài)的、沒有返回值、形參為數(shù)組。
31、在Java語言中通過new操作符來創(chuàng)建對(duì)象。
32、在Java語言中有兩種對(duì)象的比較方式,分別為“=="運(yùn)算符與equals()方法。
(1)“=="運(yùn)算符比較的是兩個(gè)對(duì)象引用的地址是否相等。
(2)equals。方法是用于比較兩個(gè)對(duì)象引用所指的內(nèi)容是否相等。
33、(1)對(duì)象引用超過其作用范圍,這個(gè)對(duì)象將被視為垃圾。
(2)將對(duì)象賦值為null
以上兩種情形的對(duì)象將會(huì)被Java虛擬機(jī)視為垃圾。
雖然垃圾回收機(jī)制很完善,但垃圾回收器只能回收那些由new操作符創(chuàng)建的對(duì)象。finalize。
方法的調(diào)用可以回收垃圾。Java提供了System.gc()方法強(qiáng)制啟動(dòng)垃圾回收器。
第八章包裝類
1、Integer類的常用方法
方法返回值功能描述
byteValue()byte以byte類型返回該Integer的值
compareTo(Integerint在數(shù)字上比較兩個(gè)Integer對(duì)象。如果兩個(gè)值
anotherlnteger)相等,則返回0;如果調(diào)用對(duì)象的數(shù)值小于
anotherlnteger的數(shù)值,則返回負(fù)值;如果調(diào)
用對(duì)象的數(shù)值大于anotherlnteger的數(shù)值,則
返回正值;
equals(ObjectIntegerObj)boolean比較此對(duì)象與指定的對(duì)象是否相等
intValueOint以int型返回此Integer對(duì)象
shortValueOshort以short型返回此Integer對(duì)象
toStringOString返回一個(gè)表示該Integer值的String對(duì)象
valueOf(Stringstr)Integer返回保存指定的String值的Integer對(duì)象
parselnt(Stringstr)int返回包含在由str指定的字符串中的數(shù)字的等
價(jià)整數(shù)值
2、Integer類的toStringO方法可將Integer對(duì)象轉(zhuǎn)換為上進(jìn)制字符串表示。
Integer類的toBinaryStringO方法可將Integer對(duì)象轉(zhuǎn)換為二進(jìn)制字符串表示。
Integer類的toHexStringO方法可將Integer對(duì)象轉(zhuǎn)換為卜六進(jìn)制字符串表示。
Integer類的toOctalStringO方法可將Integer對(duì)象轉(zhuǎn)換為八進(jìn)制字符串表示。
3、Boolean類的常用方法
方法返回值功能描述
booleanValue()boolean將Boolean對(duì)象的值以對(duì)應(yīng)的boolean值
返回
equals(Objectobj)boolean判斷調(diào)用該方法的對(duì)象與obj是否相等
parseBoolean(Strings)boolean將字符串參數(shù)解析為boolean值
toStringOString返回表示該boolean值的String對(duì)象
valueOf(Strings)boolean返回一個(gè)用指定的字符串表示值的
boolean值
4、Byte類的常用方法
方法返回值功能描述
byteValue()byte以一個(gè)byte值返回Byte對(duì)象
compareTo(ByteanotherByte)int在數(shù)字上比較兩個(gè)Byte對(duì)象
doubleValue()double以一個(gè)double值返回Byte對(duì)象
intValue()int以一個(gè)int值返回Byte對(duì)象
parseByte(Strings)byte將String型參數(shù)解析成等價(jià)的字節(jié)(byte)
形式
toString()String返回表示此Byte的值的String
valueOf(Stringstr)Byte返回一個(gè)保持指定String所給出的值的
Byte對(duì)象
Equals(objectobj)boolean將此對(duì)象與指定對(duì)象比較,如果調(diào)用該方法
的對(duì)象與obj相等,則返回true,否則返回
false
5、Character的常用方法
方法返回值功能描述
charvalue()char返回此character對(duì)象的值
compareTo(Characterint根據(jù)數(shù)字比較兩個(gè)Character對(duì)象,若這兩
anotherCharacter)個(gè)對(duì)象相等則返回0
equals(Objectobj)Boolean將調(diào)用該方法的對(duì)象與指定的對(duì)象相比較
toUpperCase(charch)char將字符參數(shù)轉(zhuǎn)換為大寫
toLowerCase(charch)char將字符參數(shù)轉(zhuǎn)換為小寫
toStringOString返回一個(gè)表示指定char值的String對(duì)象
charValue()char返回此Character對(duì)象的值
isUpperCase(charch)boolean判斷指定字符是否是大寫字符
isLowerCase(charch)boolean判斷指定字符是否是小寫字符
6、Double類的常用方法
方法返回值功能描述
byteValue()byte以byte形式返回Double對(duì)象值(通過
強(qiáng)制轉(zhuǎn)換)
compareTo(Doubled)int對(duì)兩個(gè)Double對(duì)象進(jìn)行數(shù)值比較。如果
兩個(gè)值相等,則返回0;如果調(diào)用對(duì)象
的數(shù)值小于d的數(shù)值,則返回負(fù)值;如
果調(diào)用對(duì)象的數(shù)值大于d的數(shù)值,則返
回正值;
equals(Objectobj)boolean將此對(duì)象與指定的對(duì)象相比較
intValue()int以int形式返回double值
isNaNboolean如果此double值是非數(shù)字(NaN)值,
則返回true;否則返回false
toString()String返回此Double對(duì)象的字符串表示形式
valueOf(Stringstr)Double返回保存用參數(shù)字符串str表示的
double值的Double對(duì)象
doubleValue()double以double形式返回此Double對(duì)象
longValue()long以long形式返回此double的值(通過
強(qiáng)制轉(zhuǎn)換為long)
7、Number類的方法
方法返回值功能描述
byteValue()byte以byte形式返回指定的數(shù)值
intValue()int以int形式返回指定的數(shù)值
floatValueOfloat以float形式返回指定的數(shù)值
shortValue()short以short形式返回指定的數(shù)值
longValue()long以long形式返回指定的數(shù)值
doubleValue()double以double形式返回指定的數(shù)值
第九章數(shù)字處理類
DecimalFormat類用于格式化數(shù)字
Math類為各種數(shù)學(xué)計(jì)算提供了工具方法
Random類為Java處理隨機(jī)數(shù)問題提供了各種方法
Biginteger類與BigDecimal類為所有的大數(shù)字處理提供了相應(yīng)的數(shù)學(xué)運(yùn)算操作方法
9.1數(shù)字格式化
1>Java主要對(duì)浮點(diǎn)型數(shù)據(jù)進(jìn)行數(shù)字格式化操作,其中浮點(diǎn)型數(shù)據(jù)包括
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度倉儲(chǔ)物流倉儲(chǔ)場(chǎng)地租賃合同6篇
- 二零二五年度技術(shù)開發(fā)合同:人工智能助手定制開發(fā)服務(wù)3篇
- 2025年度LED燈具安裝與節(jié)能效果評(píng)估合同3篇
- 二零二五年度展覽館租賃合同交接與展覽服務(wù)標(biāo)準(zhǔn)協(xié)議3篇
- 二零二五年度文化產(chǎn)業(yè)園區(qū)開發(fā)合作協(xié)議3篇
- 二零二五年度人工智能領(lǐng)域股東合作協(xié)議書模板3篇
- 海南職業(yè)技術(shù)學(xué)院《數(shù)控加工力學(xué)和動(dòng)力學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 海南衛(wèi)生健康職業(yè)學(xué)院《中小學(xué)音樂教學(xué)實(shí)訓(xùn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 課程設(shè)計(jì)洗瓶器
- 護(hù)理博士課程設(shè)計(jì)
- 新疆塔城地區(qū)(2024年-2025年小學(xué)六年級(jí)語文)部編版期末考試(下學(xué)期)試卷及答案
- 四人合伙投資協(xié)議書范本
- 反射療法師3級(jí)考試題庫(含答案)
- 汽車供應(yīng)商審核培訓(xùn)
- 山東省濟(jì)南市2023-2024學(xué)年高二上學(xué)期期末考試地理試題 附答案
- 期末復(fù)習(xí)試題1(試題)-2024-2025學(xué)年二年級(jí)上冊(cè)數(shù)學(xué)北師大版
- 1《地球的表面》說課稿-2024-2025學(xué)年科學(xué)五年級(jí)上冊(cè)教科版
- 汽車以租代購合同完整版完整版
- 音樂制作基礎(chǔ)知識(shí)單選題100道及答案解析
- 2024至2030年大型儲(chǔ)油罐項(xiàng)目投資價(jià)值分析報(bào)告
- GB/T 44764-2024石油、石化和天然氣工業(yè)腐蝕性石油煉制環(huán)境中抗硫化物應(yīng)力開裂的金屬材料
評(píng)論
0/150
提交評(píng)論