第四講數(shù)組字符串和實(shí)用類_第1頁(yè)
第四講數(shù)組字符串和實(shí)用類_第2頁(yè)
第四講數(shù)組字符串和實(shí)用類_第3頁(yè)
第四講數(shù)組字符串和實(shí)用類_第4頁(yè)
第四講數(shù)組字符串和實(shí)用類_第5頁(yè)
已閱讀5頁(yè),還剩38頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第四講數(shù)組、字符串和實(shí)用類4.1數(shù)組4.2Java類庫(kù)介紹4.3java.lang包中根底類庫(kù)4.4java.util包中的工具類庫(kù)124.2Java類庫(kù)介紹

Java有一系列功能強(qiáng)大的可重用類,功能相關(guān)的可重用類組織成包??芍赜妙惖睦^承層次和包的組織呈樹型結(jié)構(gòu)。程序員在進(jìn)行Java編程時(shí)要首先考慮如何充分利用已有可重用類來構(gòu)造自己新的類。因此,了解和掌握J(rèn)ava的可重用類是學(xué)習(xí)Java程序設(shè)計(jì)的另一重要方面。Java可重用類按功能劃分為:語言包java.lang(lang意為language)輸入/輸出包java.io實(shí)用程序包java.util(util意為utility)小應(yīng)用程序包java.applet圖形用戶接口包java.awt網(wǎng)絡(luò)包前三種包稱為根底包,后三種包稱為應(yīng)用包34.2Java類庫(kù)介紹44.2Java類庫(kù)介紹java.lang包:與語言相關(guān)的類Java語言核心局部由解釋程序自動(dòng)加載不需顯式說明每個(gè)java類都隱含語句“importjava.lang.*〞54.2Java類庫(kù)介紹java.io包:與輸入輸出相關(guān)的類

提供對(duì)不同的輸入和輸出設(shè)備讀寫數(shù)據(jù)的支持這些輸入和輸出設(shè)備包括鍵盤、顯示器、打印機(jī)、磁盤文件和網(wǎng)絡(luò)等。64.2Java類庫(kù)介紹java.util包—許多具有特定功能的類,

包括:日期類Array數(shù)組類Random隨機(jī)數(shù)序列類

哈希表

堆棧等74.2Java類庫(kù)介紹javax.swing包和java.awt包

創(chuàng)立圖形用戶界面元素的類可以控制所寫Applet或程序的外觀界面。包括:窗口類對(duì)話框類、按鈕類、復(fù)選框類、列表、菜單類、滾動(dòng)條類等。84.2Java類庫(kù)介紹包

與網(wǎng)絡(luò)操作相關(guān)的類

包括:TCPsocketsURLUDP數(shù)據(jù)報(bào)通信等類

94.2Java類庫(kù)介紹java.applet包

控制Hotjava瀏覽器的類控制HTML文檔格式控制應(yīng)用程序中的聲音資源等其中Applet類是用來創(chuàng)立包含于HTML頁(yè)內(nèi)的applet必不可少的類

104.2Java類庫(kù)介紹Java.lang包中的根底類:Object類Java中其他類的父類或祖先類,定義了Java對(duì)象所需要的根本操作和屬性。如:publicStringtoString();publicbooleanequals(Objectobj);protectedvoidfinalize()throwsThrowale114.3Java.lang包中的根底類庫(kù)Java.lang包中的根底類:Math——提供數(shù)學(xué)常數(shù)及各種常用函數(shù)。System——提供對(duì)操作系統(tǒng)的訪問,包括默認(rèn)的I/O流環(huán)境變量、自動(dòng)垃圾收集、系統(tǒng)時(shí)間和系統(tǒng)屬性;許多System方法可訪問Runtime類的方法。124.3Java.lang包中的根底類庫(kù)Java.lang包中的根底類:Thread線程類和Runnable接口提供多線程環(huán)境的線程管理和操作的類和接口。Error錯(cuò)誤類和Exception異常類處理程序勻稱過程中出現(xiàn)的錯(cuò)誤和異常134.3Java.lang包中的根底類庫(kù)根本數(shù)據(jù)類型包裝類:144.3Java.lang包中的根底類庫(kù)154.3.1Math數(shù)學(xué)類Math數(shù)學(xué)類

—提供E、PI常量和一組數(shù)學(xué)函數(shù)。它的所有方法和變量也都是靜態(tài)的。

三角函數(shù)乘方舍入其他運(yùn)算16三角函數(shù)〔1〕sin(doublea)返回弧度a的sin值〔2〕cos(doublea)返回弧度a的cos值〔3〕tan(doublea)返回弧度a的tan值反三角函數(shù)〔1〕asin(doubler)返回sin值為r的弧度〔2〕acos(doubler)返回cos值為r的弧度〔3〕atan(doubler)返回tan值為r的弧度4.3.1Math數(shù)學(xué)類17乘方〔1〕pow(doublex,doubley)//返回x的y次方?!?〕exp(doublex)//返回ex〔3〕log(doublex)//返回x的自然對(duì)數(shù)?!?〕sqrt(doublex)//返回x的平方根。〔返回類型均為double型〕4.3.1Math數(shù)學(xué)類18舍入〔1〕ceil(doublea)//返回大于或等于a的最小整數(shù)值〔2〕floor(doublea)//返回小于或等于a的最大整數(shù)值?!?〕rint(doublea)//返回四舍五入后的整數(shù)值。〔上面三個(gè)方法的返回類型均為double型〕〔4〕round(floata)//返回四舍五入后的整數(shù)值,返回類型為int型。〔5〕round(doublea)//返回四舍五入后的整數(shù)值,返回類型為long4.3.1Math數(shù)學(xué)類19其他運(yùn)算〔1〕abs(a)返回a的絕對(duì)值//a可以是int、long、float、double型,返回類型與a類型相同〔2〕max(a,b)//返回a和b的最大值〔3〕min(a,b)//返回a和b的最小值〔4〕random()//返回一個(gè)0.0到1.0之間的隨機(jī)數(shù),返回類型為double4.3.1Math數(shù)學(xué)類204.3.2Class類Class

—提供類名、父類及類所在的包等信息。Object類中g(shù)etClass()返回當(dāng)前對(duì)象所在的類,返回值類型是Class,在調(diào)用Class類中的getName()方法放回該類的名稱,返回值是String。例:this.getClasss().getName();4.3.3字符串類

211.String類

2.StringBuffer類

3.StringTokenizer類Java.lang提供了兩種字符串類:

String類StringBuffer類4.3.3字符串類

--String類String類可創(chuàng)立一個(gè)對(duì)象,用于代表一個(gè)字符串(不變的字符串),并定義了類似查找,比較和連接字符的操作。String類提供的幾種常用的字符串創(chuàng)立方法:Strings=“Hello!〞;//使用字符串常量自動(dòng)創(chuàng)立String實(shí)例publicString(Strings);//通過String對(duì)象或字符串常量傳遞publicString(charvalue[]);//整個(gè)字符數(shù)組賦給String構(gòu)造方法。publicString(charvalue[],intoffset,intcount);//字符數(shù)組一局部賦給String構(gòu)造方法,offset為起始下標(biāo),count為子數(shù)組長(zhǎng)度22String類提供了豐富的字符串操作方法,主要有:publicintlength();//返回字符串的長(zhǎng)度。publiccharcharAt(intindex);//返回字符串位置index處的字符。publicbooleanequals(Objecto);//比較兩個(gè)字符串對(duì)象,相等返回true,反之,返回false。publicintcompareTo(Strings);//比較兩個(gè)字符串字典順序,相等返回0,s大于當(dāng)前串

返回一個(gè)負(fù)值,s小于當(dāng)前串返回一個(gè)正值。234.3.3字符串類

--String類使用==作比較時(shí),指向同一對(duì)象為true,而使用equals()作比較時(shí),只要兩邊的值和類型相同即為true。例如:Stringx=newString(“abc〞);Stringy=newString(“abc〞);x==y為false,而x.equals(y)為true。244.3.3字符串類

--String類String類如果采用直接賦值而不用new來創(chuàng)立字符串,這時(shí)相同的字符串在Java中實(shí)際上共享一塊內(nèi)存,變量將指向同一個(gè)對(duì)象。例如:Stringx=“abcd〞;Stringy=“abcd〞;x==y為true,x.equals(y)也為true。254.3.3字符串類

--String類但當(dāng)用其生成其它字符串時(shí),新的字符串對(duì)象那么占用不同內(nèi)存。例如:Stringx=“abcd〞;Stringy=x+“d〞;Stringz=x+“d〞;y==z為false,y.equals(z)為true。264.3.3字符串類

--String類27publicStringtoLowertCase();//將當(dāng)前字符串全轉(zhuǎn)換為小寫形式。publicStringtoUpperCase();

//將當(dāng)前字符串全轉(zhuǎn)換為大寫形式。publicChartoCharArray();

//將當(dāng)前字符串轉(zhuǎn)換為字符數(shù)組。publicStringconcat(Stringstr);

//將當(dāng)前字符串與str連接,返回連接后的字符串。注意:String類的所有方法都不會(huì)改變String類對(duì)象本身的值!4.3.3字符串類

--String類28StringBuffer類實(shí)現(xiàn)一種動(dòng)態(tài)可變的字符串,可以用于創(chuàng)立String類,StringBuffer一旦建立,用toString()方法將其轉(zhuǎn)換為String類。以后就可以使用String類方法來操作。

4.3.3字符串類

--StringBuffer類29StringBuffer類提供三種創(chuàng)立方法:

publicStringBuffer();//創(chuàng)立一個(gè)空的StringBuffer類。publicStringBuffer(intlength);//創(chuàng)立一個(gè)大小為length的StringBuffer類。publicStringBuffer(Stringstr);//按str創(chuàng)立一個(gè)動(dòng)態(tài)可變的StringBuffer類。4.3.3字符串類

--StringBuffer類30

StringBuffer類提供的方法主要用于把輸入數(shù)據(jù)轉(zhuǎn)換為String類。輸入數(shù)據(jù)可來自鍵盤或其它數(shù)據(jù)源,類型可以是字符、字符數(shù)組、整數(shù)、浮點(diǎn)數(shù)和Object類型等。4.3.3字符串類

--StringBuffer類31StringBuffer的主要方法:publicintlength()//返回緩沖區(qū)的當(dāng)前字符數(shù)publicintcapacity()//返回緩沖區(qū)的最大容量publicsynchronizedStringBufferappend(typevariable)//把variable轉(zhuǎn)換為字符串,然后與當(dāng)前字符串連接publicsynchronizedStringBuffer

append(Char(charch))//把字符ch連接到當(dāng)前串尾publicsynchronizedStringBufferinsert(intoffset,typevariable)//把variable轉(zhuǎn)換為字符串,然后插入到當(dāng)前串由offset指定的位置4.3.3字符串類

--StringBuffer類324.3.3字符串類

--StringTokenizer類

StringTokenizer類主要用于對(duì)字符串的分析,可以將一個(gè)字符串分解成數(shù)個(gè)單元。如提取一句話中的每個(gè)單詞。StringTokenizer的主要方法:

StringTokenizer(Stringstr)//構(gòu)造函數(shù)intcountTokens()

//返回令牌的數(shù)目BooleanhasMoreTokens()//檢查是否還有令牌存在334.3.3字符串類

--StringTokenizer類StringTokenizer的主要方法:BooleanhasMoreTokens()//檢查是否還有令牌存在String

nextToken()//返回下一個(gè)令牌String

nextToken(Stringdelimit)//根據(jù)指定的分界符delimit返回令牌java.util實(shí)用包提供了實(shí)現(xiàn)各種不同實(shí)用功能的類,主要有日期類、數(shù)組類和集合類等。java.util包由一些實(shí)用類組成的,有些類還是Java語言所不可缺少的。java.util包的大致層次結(jié)構(gòu)如圖4-4所示

344.4java.util包中的工具類庫(kù)java.util.*35

java.util包層次結(jié)構(gòu)4.4java.util包中的工具類庫(kù)36說明:Dictionary是抽象類,Enumeration和Observer是接口,其余屬于普通類;Hashtable除繼承Dictionary類外,還是java.lang類庫(kù)中Cloneable的一個(gè)實(shí)現(xiàn);BitSet和Vector除繼承了類Object外,同時(shí)也是的實(shí)現(xiàn);BitSet是最終類,不能用以創(chuàng)立子類。4.4java.util包中的工具類庫(kù)日期類包括Date、Calendar和GregorianCalendar描述日期和時(shí)間提供對(duì)日期值的許多操作方法獲取當(dāng)前日期比較兩個(gè)日期

溫馨提示

  • 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)論