版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、程序設(shè)計程序設(shè)計第四章 Java API類庫(一)類庫介紹、java.lang包、字符串Java程序設(shè)計與實(shí)訓(xùn)幻燈片 2,共32頁2學(xué)習(xí)目標(biāo)學(xué)習(xí)目標(biāo)v 了解了解Java API類庫及類庫及API文檔。文檔。v 掌握掌握java.lang包中的常見類。包中的常見類。v 掌握掌握String類。類。v 掌握掌握StringBuffer類。類。v 掌握日期相關(guān)的關(guān)的使用。掌握日期相關(guān)的關(guān)的使用。v 掌握常用容器的使用。掌握常用容器的使用。v 了解正則表達(dá)式。了解正則表達(dá)式。Java程序設(shè)計與實(shí)訓(xùn)幻燈片 3,共32頁3重難點(diǎn)重難點(diǎn)v 重點(diǎn)重點(diǎn)API文
2、檔的使用。文檔的使用。java.lang包中的常見類。包中的常見類。String類。類。StringBuffer類。類。日期相關(guān)的類。日期相關(guān)的類。容器相關(guān)的類。容器相關(guān)的類。泛型泛型正則表達(dá)式。正則表達(dá)式。v 難點(diǎn)難點(diǎn)java.lang包中的包中的Class類。類。String類類String類和類和StringBuffer類的比較。類的比較。SimpleDateFormat類。類。List類。類。Set類。類。Map類。類。泛型泛型正則表達(dá)式。正則表達(dá)式。Java程序設(shè)計與實(shí)訓(xùn)幻燈片 4,共32頁4目錄目錄 4.1 Java API類庫介紹類庫介紹4.2 java
3、.lang包包4.3 字符串處理字符串處理4.4 java.util包包本章分二個PPT,這是第1個文件Java程序設(shè)計與實(shí)訓(xùn)幻燈片 5,共32頁54.1 Java API類庫介紹類庫介紹v 常用的常用的Java SE API java.lang java.util java.io java.awt和和javax.swing java.sql java.applet v 第三方第三方API JUnit log4j JDBC SWT版本類和接口的數(shù)目方法和字段的數(shù)目1.021221251.150454781.21781209351.32130239011.43020(1
4、35個包個包)321381.5(5.0)3600(166個包個包)6.03817(205個包個包)38259Java程序設(shè)計與實(shí)訓(xùn)幻燈片 6,共32頁6Java SE API文檔文檔這是最最重要的一份文檔,每位Java程序員都應(yīng)該在自己的硬盤上有一份。Java程序設(shè)計與實(shí)訓(xùn)幻燈片 7,共32頁74.2 java.lang包包v java.lang是是Java語言的核心包語言的核心包v 將被自動導(dǎo)入將被自動導(dǎo)入v 提供了提供了Java語言的核心功能語言的核心功能 System類:類: Object類:類: Math類:數(shù)學(xué)類類:數(shù)學(xué)類 Stri
5、ng類:字符串類:字符串 Exception類:異常類類:異常類 Thread類:線程類類:線程類Java程序設(shè)計與實(shí)訓(xùn)幻燈片 8,共32頁84.2.1 Object類類v Object類是所有類的基類類是所有類的基類v 常用方法常用方法 toString()方法:返回對象的字符串表示,如方法:返回對象的字符串表示,如Student757aef equals()方法:比較類指針的地址方法:比較類指針的地址v Object類的方法被所有類繼承類的方法被所有類繼承 有些子類覆蓋了某些方法有些子類覆蓋了某些方法 例如:例如:String類覆蓋了類覆蓋了toString()和
6、和equals()方法方法Java程序設(shè)計與實(shí)訓(xùn)幻燈片 9,共32頁94.2.2 Runtime類類v Runtime類封裝了類封裝了Java的執(zhí)行環(huán)境的執(zhí)行環(huán)境v 不能創(chuàng)建,只能通過靜態(tài)方法不能創(chuàng)建,只能通過靜態(tài)方法getRuntime()獲取獲取v 作用是與操作系統(tǒng)通信作用是與操作系統(tǒng)通信 獲得內(nèi)存使用情況獲得內(nèi)存使用情況 中止程序,返回到操作系統(tǒng)中止程序,返回到操作系統(tǒng) 運(yùn)行外部程序運(yùn)行外部程序 Runtime rt = Runtime.getRuntime(); System.out.println(Java虛擬機(jī)中的內(nèi)存總量: +rt.totalMemory
7、();Java程序設(shè)計與實(shí)訓(xùn)幻燈片 10,共32頁104.2.3 ClassLoader抽象類抽象類v 用于加載字節(jié)碼文件用于加載字節(jié)碼文件.class到到JVM中中v 通過通過Class類的類的getClassLoader()方法返回它的一個實(shí)現(xiàn)方法返回它的一個實(shí)現(xiàn)Java程序設(shè)計與實(shí)訓(xùn)幻燈片 11,共32頁114.2.4 Class類類v 包含了與類相關(guān)的操作包含了與類相關(guān)的操作 獲得類的有關(guān)信息獲得類的有關(guān)信息 對類進(jìn)行某些操作對類進(jìn)行某些操作 加載字節(jié)碼文件(調(diào)用加載字節(jié)碼文件(調(diào)用ClassLoader類的相應(yīng)方法實(shí)現(xiàn))類的相應(yīng)方法
8、實(shí)現(xiàn))v 因此使因此使Java語言具有動態(tài)性語言具有動態(tài)性Java程序設(shè)計與實(shí)訓(xùn)幻燈片 12,共32頁124.2.5 基本數(shù)據(jù)類型的包裝類基本數(shù)據(jù)類型的包裝類v 每一種基本數(shù)據(jù)類型都有一個每一種基本數(shù)據(jù)類型都有一個包裝類包裝類 8種基本數(shù)據(jù)類型,有種基本數(shù)據(jù)類型,有8種對應(yīng)種對應(yīng)的包裝類的包裝類 封裝了有關(guān)的常量和方法封裝了有關(guān)的常量和方法 最大值、最小值最大值、最小值 類型的轉(zhuǎn)換類型的轉(zhuǎn)換v 常用的方法常用的方法 字符串表示的數(shù)值轉(zhuǎn)換對對應(yīng)字符串表示的數(shù)值轉(zhuǎn)換對對應(yīng)的數(shù)值類型的數(shù)值類型 二進(jìn)制、八進(jìn)制、十進(jìn)制和十二進(jìn)制、八進(jìn)制、十進(jìn)制和十六進(jìn)制之間的轉(zhuǎn)換六進(jìn)制之間的
9、轉(zhuǎn)換基本數(shù)據(jù)類型基本數(shù)據(jù)類型對應(yīng)的包裝類對應(yīng)的包裝類bytebyteByteByteshortshortShortShortintintIntegerIntegerlonglongLongLongfloatfloatFloatFloatdoubledoubleDoubleDoublecharcharCharacterCharacterbooleanbooleanBooleanBooleanJava程序設(shè)計與實(shí)訓(xùn)幻燈片 13,共32頁134.2.6 Math類類v 封裝了常用的數(shù)學(xué)方法和兩個常數(shù)封裝了常用的數(shù)學(xué)方法和兩個常數(shù)E和和PI 包括指數(shù)、對數(shù)、平方根和三角函數(shù)等
10、包括指數(shù)、對數(shù)、平方根和三角函數(shù)等v Math類是類是final的的 因此它不能被繼承因此它不能被繼承v 它的構(gòu)造方法是它的構(gòu)造方法是private的的 因此它不能被實(shí)例化因此它不能被實(shí)例化v 所有方法都是靜態(tài)的所有方法都是靜態(tài)的 只能通過類名來引用只能通過類名來引用Java程序設(shè)計與實(shí)訓(xùn)幻燈片 14,共32頁144.2.7 System類類v 封裝了與平臺有關(guān)的功能封裝了與平臺有關(guān)的功能 標(biāo)準(zhǔn)輸入和標(biāo)準(zhǔn)輸出標(biāo)準(zhǔn)輸入和標(biāo)準(zhǔn)輸出 外部(操作系統(tǒng))定義的屬性和環(huán)境變量的訪問外部(操作系統(tǒng))定義的屬性和環(huán)境變量的訪問 快速復(fù)制數(shù)組的一部分實(shí)用方法快速復(fù)制數(shù)組的一部分實(shí)用方法
11、 System類不能被實(shí)例化。類不能被實(shí)例化。v 例如下述代碼退出例如下述代碼退出Java應(yīng)用程序的執(zhí)行:應(yīng)用程序的執(zhí)行:v 下述代碼將輸出應(yīng)用程序執(zhí)行時的當(dāng)前路徑:下述代碼將輸出應(yīng)用程序執(zhí)行時的當(dāng)前路徑:String dir = System.getProperty(user.dir);System.out.println(當(dāng)前路徑是: + dir);System.exit(0);Java程序設(shè)計與實(shí)訓(xùn)幻燈片 15,共32頁15java.lang中的其它類中的其它類v 4.2.10 異常處理類異常處理類 第第5章講解章講解v 4.2.11 線程控制類線程控制類 第第
12、8章講解章講解Java程序設(shè)計與實(shí)訓(xùn)幻燈片 16,共32頁164.3 字符串字符串v 字符串常量字符串常量 使用雙引號使用雙引號定義字符串,使用單引號定義字符串,使用單引號定義字符。定義字符。 字符串幾乎可以任意長(從字符串幾乎可以任意長(從0至至231,約,約20億)。億)。v 字符串類字符串類 String類類 StringBuffer類類 Java程序設(shè)計與實(shí)訓(xùn)幻燈片 17,共32頁174.3.2 String類字符串類字符串v String類的聲明和初始化類的聲明和初始化 聲明字符串變量聲明字符串變量 初始化字符串初始化字符串 直接賦
13、值,例如:直接賦值,例如: 使用構(gòu)造方法,例如:使用構(gòu)造方法,例如: String類實(shí)例的值為空和空串是不同的:類實(shí)例的值為空和空串是不同的:str = abc;/ 直接賦值String str2 = new String();/ 創(chuàng)建長度為0的字符串String str5 = null; / str5的值為空(也是默認(rèn)值),它沒有值int len = str5.length();/ 沒有長度,因此運(yùn)行時出現(xiàn)異常String str6 = ; / str6的值為空串,它有值,只是長度為0len = str6.length();/ 長度為 0 Java程序設(shè)計與實(shí)訓(xùn)幻燈
14、片 18,共32頁18String類的常用方法類的常用方法v 字符串的長度字符串的長度 String類的類的length()方法返回字符串的長度方法返回字符串的長度v 字符串的比較字符串的比較 必須使用必須使用equals()方法而不是方法而不是=號來比較字符串的值號來比較字符串的值v 字符串中指定位置的字符字符串中指定位置的字符 String str1 = Java; / 如果內(nèi)存中沒有Java常量,則創(chuàng)建它 String str2 = Java; / 內(nèi)存中已有Java常量,所以str2指向它 String str3 = new String(Java); / 新創(chuàng)建一個值為Java的常量
15、 String str4 = new String(Java); / 新創(chuàng)建一個值為Java的常量 boolean b1 = str1 = str2; / true,str1和str2指向同一個字符常量 boolean b2 = str2 = str3; / false,str2和str3指向不同的字符常量 boolean b3 = str3 = str4; / false,str3和str4指向不同的字符常量 String s1 = 這是Java程序。; char c1 = s1.charAt(3); / a char c2 = s1.charAt(7); / 序Java程序設(shè)計與實(shí)訓(xùn)www
16、.幻燈片 19,共32頁19String類的常用方法(續(xù))類的常用方法(續(xù))v 字符串的檢索字符串的檢索v 字符串的子串字符串的子串v 字符串的替換字符串的替換v 字符串轉(zhuǎn)換大小寫字符串轉(zhuǎn)換大小寫 String str = MyEclipse.exe; String s1 = str.toUpperCase(); / MYECLIPSE.EXE String s2 = str.toLowerCase(); / myeclipse.exe String str = Java programming.; String s2 = str.replace(pro, Pro); / J
17、ava Programming. String str = MyEclipse.exe; String s2 = str.substring(2, 9); / Eclipse String s1 = 這是Java程序。; char c2 = s1.charAt(7); / 序Java程序設(shè)計與實(shí)訓(xùn)幻燈片 20,共32頁20String類的特殊性類的特殊性v 所有引用數(shù)據(jù)類型都必須使用所有引用數(shù)據(jù)類型都必須使用new操作符創(chuàng)建,而字符串操作符創(chuàng)建,而字符串類型還能通過直接賦值創(chuàng)建。類型還能通過直接賦值創(chuàng)建。v 字符串常量是一個對象,因此可以調(diào)用字符串常量的方法,字符串常
18、量是一個對象,因此可以調(diào)用字符串常量的方法,如如Java!.length()。v 字符串類型屬于引用數(shù)據(jù)類型,但在方法調(diào)用時,采用的字符串類型屬于引用數(shù)據(jù)類型,但在方法調(diào)用時,采用的是傳值調(diào)用。是傳值調(diào)用。v 字符串類型可以用加號字符串類型可以用加號“+”運(yùn)算符,將字符串類的對象與運(yùn)算符,將字符串類的對象與其它各種類型(基本或引用數(shù)據(jù)類型)的對象連接。其它各種類型(基本或引用數(shù)據(jù)類型)的對象連接。v 字符串類型可以用賦值運(yùn)算符字符串類型可以用賦值運(yùn)算符“=”和和“+=”進(jìn)行賦值。進(jìn)行賦值。v 字符串的值本身是常量,是不可變的。字符串的值本身是常量,是不可變的。Java程序設(shè)計與實(shí)訓(xùn)www.ng
19、幻燈片 21,共32頁214.3.3 StringBuffer類字符串類字符串v StringBuffer類(緩沖型字符串類)類(緩沖型字符串類) 可變長的和可寫的字符序列可變長的和可寫的字符序列 其中除字符序列之外還含有預(yù)留空間其中除字符序列之外還含有預(yù)留空間 直接在字符序列上進(jìn)行追加、插入或刪除操作直接在字符序列上進(jìn)行追加、插入或刪除操作v StringBuffer構(gòu)造方法(只能使用構(gòu)造方法創(chuàng)建)構(gòu)造方法(只能使用構(gòu)造方法創(chuàng)建) StringBuffer sb1 = new StringBuffer(); / 長度為0,容量為16(默認(rèn)值) StringBuffer sb2
20、= new StringBuffer(50); / 長度為0,容量為50 StringBuffer sb3 = new StringBuffer(Java); / 長度為4,容量為20(=4+16)Java程序設(shè)計與實(shí)訓(xùn)幻燈片 22,共32頁22長度與緩沖區(qū)容量長度與緩沖區(qū)容量v 長度長度 String類和類和StringBuffer類都有類都有l(wèi)ength()方法方法v 緩沖區(qū)容量(僅緩沖區(qū)容量(僅StringBuffer類)類) 方法方法capacity()返回返回StringBuffer實(shí)例的緩沖區(qū)容量。實(shí)例的緩沖區(qū)容量。 方法方法ensureCapacity(
21、)確保容量至少等于指定的最小值。新緩沖區(qū)確保容量至少等于指定的最小值。新緩沖區(qū)容量取下述二者的較大值:容量取下述二者的較大值: 參數(shù)參數(shù)minCapacity的值。的值。 原有容量的兩倍加原有容量的兩倍加2。 StringBuffer sb1 = new StringBuffer(); / 長度為0,容量為16 StringBuffer sb2 = new StringBuffer(50); / 長度為0,容量為50 StringBuffer sb3 = new StringBuffer(Java); / 長度為4,容量為16+4 = 20 sb1.ensureCapacity(60); /
22、長度0,容量60,因?yàn)?6*2+2 = 34 60 sb3.append(12345678901234567890); / 長度4+20 = 24,容量 = 2*20+2 = 42Java程序設(shè)計與實(shí)訓(xùn)幻燈片 23,共32頁23StringBuffer類的比較類的比較v 無法比較無法比較StringBuffer類的值類的值 不能用不能用= 也不能用也不能用equals()方法方法v 只能將它們轉(zhuǎn)換為只能將它們轉(zhuǎn)換為String類,然后進(jìn)行比較類,然后進(jìn)行比較 StringBuffer sb1 = new StringBuffer(Java); StringBuffer
23、 sb2 = new StringBuffer(Java); boolean b1 = sb1=sb2; / false,不能用= boolean b2 = sb1.equals(sb2); / false,也不能用equals() boolean b3 = sb1.toString().equals(sb2.toString(); / trueJava程序設(shè)計與實(shí)訓(xùn)幻燈片 24,共32頁244.3.4 String類和類和StringBuffer類的比較類的比較v String類在內(nèi)存中的表現(xiàn)類在內(nèi)存中的表現(xiàn)v 字符串的值本身是常量,是不可變的,例如: String s2 = abc; / 指向已有的字符串值 System.out.println(s1=s2); / 返回true String s1 = abc; / 在SLP中創(chuàng)建abc String s1 = abc; / 在SLP中創(chuàng)建 s1 = s1 + 123; /
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廠房轉(zhuǎn)讓合同范例
- 工程勞務(wù)合同范例3篇
- 護(hù)膚店長合同范例范例
- 再生鋁國際貿(mào)易合同范例
- 勘察設(shè)計類合同范例
- 姐妹倆房子過戶合同范例
- 合作經(jīng)營購房合同范例
- 健康行業(yè)合同范例
- 印花材料供應(yīng)合同范例
- 出版社合同范例
- 線路工程灌注樁施工作業(yè)指導(dǎo)書施工方案
- 重力壩的分縫與止水
- 三重管高壓旋噴樁施工工藝規(guī)程與施工方案
- 個體診所藥品清單
- 藥品招商流程
- PFMEA的嚴(yán)重度SOD的評分和優(yōu)先級別
- 國網(wǎng)基建國家電網(wǎng)公司輸變電工程結(jié)算管理辦法
- 100道遞等式計算(能巧算得要巧算)
- 中國地圖含省份信息可編輯矢量圖
- 路政運(yùn)政交通運(yùn)輸執(zhí)法人員考試題庫
- 企業(yè)技術(shù)標(biāo)準(zhǔn)化管理
評論
0/150
提交評論