




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第7章Java庫常見類第7章Java庫常見類在進行Java編程的時候,常常須要不斷引用Java類庫所供應(yīng)的類,這些類對程序質(zhì)量起到至關(guān)重要的作用,本章將介紹其中基本、最常用的類。7.1基本類型的類包裝由于基本數(shù)據(jù)類型不供應(yīng)對其進行操作的方法,Java供應(yīng)了基本數(shù)據(jù)類型相關(guān)的類,實現(xiàn)了對基本數(shù)據(jù)類型的封裝,這些類所供應(yīng)的方法足以滿足對數(shù)據(jù)進行操作的須要?;緮?shù)據(jù)類型包括byte、int、short、long、float、double、char,相應(yīng)的類在java.lang包中,分別是Byte、Integer、Short、Long、Float、Double和Character類。7.1基本類型的類包裝7.1.1Float類和Double類對float、double基本型數(shù)據(jù)的類包裝。運用Float類的構(gòu)造方法:Float(Floatnum)創(chuàng)建一個Float類型的對象;運用Double的構(gòu)造方法:Double(doublenum)創(chuàng)建一個Double類型的對象。7.1基本類型的類包裝7.1.1Float類和Double類對float、double基本型數(shù)據(jù)的類包裝。Float對象調(diào)用floatValue()方法可以返回該對象含有的float型數(shù)據(jù)。Double對象調(diào)用doubleValue()方法可以返回該對象含有的double型數(shù)據(jù)。7.1基本類型的類包裝7.1.2Byte、Integer、Short類和Long類下述構(gòu)造方法分別創(chuàng)建Byte、Integer、Short和Long類型的對象:Byte(bytenum)Integer(intnum)Short(shortnum)Long(longnum)Byte、Integer、Short和Long對象分別調(diào)用byteValue()、intValue()、shortValue()和longValue()方法,返回該對象含有的基本型數(shù)據(jù)7.1基本類型的類包裝7.1.3Character類運用Character類的構(gòu)造方法:Character(charc)創(chuàng)建一個Character類型的對象。Character對象調(diào)用charValue()方法可以返回該對象含有的char型數(shù)據(jù)。須要留意的是,Character類還另外包含了一些類方法,這些方法可以干脆通過類名調(diào)用,用來進行字符分類。7.1基本類型的類包裝7.1.3Character類Character類中的一些常用方法如表7-1所示。表7-1Character類中的一些常用方法方法含義staticbooleanisDigit(charch)確定指定字符是否為數(shù)字staticbooleanisLetter(charch)確定指定字符是否為字母staticbooleanisLetterOrDigit(charch)確定指定字符是否為字母或數(shù)字staticbooleanisLowerCase(charch)確定指定字符是否為小寫字母staticbooleanisUpperCase(charch)確定指定字符是否為大寫字母staticbooleanisTitleCase(charch)確定指定字符是否為首字母大寫字符7.1基本類型的類包裝7.1.3Character類【例7-1】將一個字符數(shù)組中的小寫字母變成大寫字母,并將大寫字母變成小寫字母。1)在包“ch7”中創(chuàng)建可視類“Ex7_1”,在程序界面中添加一個按鈕(參見例6-2),為按鈕添加事務(wù)代碼。2)程序運行結(jié)果如圖所示。7.1基本類型的類包裝7.1.4String類Java運用java.lang包中的String類來創(chuàng)建字符串。1.創(chuàng)建字符串字符串是常量;它們的值在創(chuàng)建之后不能更改。字符串緩沖區(qū)支持可變的字符串。因為String對象是不行變的,所以可以共享。例如:Stringstr="abc";等效于:chardata[]={'a','b','c'};Stringstr=newString(data);7.1基本類型的類包裝7.1.4String類1.創(chuàng)建字符串(1)先聲明后創(chuàng)建Strings;s=newString("abc");(2)聲明和創(chuàng)建一步完成Strings=newString("abc");(3)用已創(chuàng)建的字符串創(chuàng)建另一個字符串Stringb=String(a);(4)利用其它String類的構(gòu)造方法7.1基本類型的類包裝7.1.4String類2.獲得一個字符串的長度方法:publicintlength()可以獲得一個字符串的長度,例如:Stringtom=newString("tom");Stringjerry=newString("jerry");n1=tom.length(); //字符串長度為3n2=jerry.length(); //字符串長度為57.1基本類型的類包裝7.1.4String類3.返回指定索引處的char值方法:publiccharcharAt(intindex)返回指定索引處的char值,索引范圍為從0到length()–1。例如:c=tom.charAt(2); //m7.1基本類型的類包裝7.1.4String類4.字符串比較方法:publicbooleanequals(ObjectanObject)當(dāng)且僅當(dāng)該參數(shù)不為null,并且是與此對象表示相同字符序列的String對象時,結(jié)果才為true.例如:Stringman=newString("tom");man.equals(tom); //trueman.equals(jerry); //falsepublicbooleanequalsIgnoreCase(StringanotherString)將此String與另一個String比較,不考慮大小寫。7.1基本類型的類包裝7.1.4String類5.比較兩個字符串方法:publicintcompareTo(StringanotherString)按字典依次將該String對象表示的字符序列與參數(shù)字符串所表示的字符序列進行比較。Stringstr=newString("ton");tompareTo(str); //小于0tompareTo(jerry); //大于0tompareTo(man); //等于07.1基本類型的類包裝7.1.4String類5.比較兩個字符串字符串對象調(diào)用
publicintcompareToIgnoreCase(Stringstr)方法,該方法不考慮大小寫。7.1基本類型的類包裝7.1.4String類6.返回字符在字符串中第一次出現(xiàn)處的索引方法:publicintindexOf(intch)返回指定字符在此字符串中第一次出現(xiàn)處的索引。假如在此String對象表示的字符序列中出現(xiàn)值為ch的字符,則返回第一次出現(xiàn)該字符的索引。假如沒有檢索到字符ch,該方法返回-1。7.1基本類型的類包裝7.1.4String類6.返回字符在字符串中第一次出現(xiàn)處的索引方法:publicintindexOf(Stringstr)從當(dāng)前字符串的頭起先檢索字符串str,并返回首次出現(xiàn)str的位置。假如沒有檢索到字符串,該方法返回-1。
7.1基本類型的類包裝7.1.4String類6.返回字符在字符串中第一次出現(xiàn)處的索引方法:publicintindexOf(Stringstr,intfromIndex)從當(dāng)前字符串的fromIndex位置處起先檢索字符串str,并返回首次出現(xiàn)str的位置。7.1基本類型的類包裝7.1.4String類6.返回字符在字符串中第一次出現(xiàn)處的索引方法:publicintlastIndexOf(Stringstr)從當(dāng)前字符串的頭起先檢索字符串str,并返回最終出現(xiàn)str的位置。7.1基本類型的類包裝7.1.4String類6.返回字符在字符串中第一次出現(xiàn)處的索引例如:Stringstu=newString("Iamagoodstudent");stu.indexOf('a'); //1stu.indexOf("good"); //5stu.indexOf("a",7); //13stu.indexOf("x",7); //-17.1基本類型的類包裝7.1.4String類7.返回一個子字符串方法:publicStringsubstring(intbeginIndex)返回一個新的字符串,是此字符串的一個子字符串。該子字符串從指定索引處的字符起先,直到此字符串末尾。7.1基本類型的類包裝7.1.4String類7.返回一個子字符串方法:publicStringsubstring(intbeginIndex,intendIndex)返回一個新字符串,它是此字符串的一個子字符串。該子字符串從指定的beginIndex處起先,直到索引endIndex-1處的字符。因此,該子字符串的長度為endIndex-beginIndex。例如:stu.substring(7); //“goodstudent”stu.substring(7,11); //“good”7.1基本類型的類包裝7.1.4String類8.將字符串全部字符都轉(zhuǎn)換為小寫方法:publicStringtoLowerCase()將此String中的全部字符都轉(zhuǎn)換為小寫。字符串對象調(diào)用publicStringtoUpperCase()運用默認語言環(huán)境的規(guī)則將此String中的全部字符都轉(zhuǎn)換為大寫。Stringabc=newString("abcDEF");abc.toLowerCase(); //"abcdef"abc.toUpperCase(); //"ABCDEF"7.2StringBuffer類String類創(chuàng)建的字符串對象是不行修改的,運用StringBuffer類可以創(chuàng)建可修改的字符串序列。7.2.1StringBuffer類的構(gòu)造方法StringBuffer類有三個構(gòu)造方法:StringBuffer()運用該無參數(shù)的構(gòu)造方法創(chuàng)建的StringBuffer對象,其初始容量可以容納16個字符。當(dāng)對象存放的字符串長度大于16時,其容量將自動增加。7.2StringBuffer類7.2.1StringBuffer類的構(gòu)造方法StringBuffer類有三個構(gòu)造方法:StringBuffer()運用該無參數(shù)的構(gòu)造方法創(chuàng)建的StringBuffer對象,其初始容量可以容納16個字符。當(dāng)對象存放的字符串長度大于16時,其容量將自動增加。StringBuffer對象可以通過length()方法獲得其存放的字符串的長度,通過capacity()方法獲得對象的實際容量。7.2StringBuffer類7.2.1StringBuffer類的構(gòu)造方法StringBuffer(intsize)運用該構(gòu)造方法創(chuàng)建的StringBuffer對象,其初始容量為參數(shù)size指定的字符個數(shù),當(dāng)對象存放的字符串長度大于size時,其容量將自動增加。StringBuffer(Strings)運用該構(gòu)造方法創(chuàng)建的StringBuffer對象,其初始容量為參數(shù)字符串s的長度外加16個字符。當(dāng)對象存放的字符串長度大于該長度時,其容量將自動增加。7.2StringBuffer類7.2.2StringBuffer類的常用方法StringBuffer類中的一些常用方法如表7-2所示。方法含義append(str)將其他Java類型數(shù)據(jù)轉(zhuǎn)化為字符串后再追加到StringBuffer對象中charAt(intn)得到參數(shù)n指定的位置上的單個字符,第一個位置為0voidsetCharAt(intn,charch)將當(dāng)前StringBuffer對象實體中的字符序列位置n處的字符用參數(shù)ch指定的字符替換StringBufferinsert(intindex,Stringstr)將一個字符串插入實體中的字符序列中,并返回當(dāng)前對象的引用publicStringBufferreverse()將該對象實體中的字符序列翻轉(zhuǎn),并返回當(dāng)前對象的引用StringBufferdelete(intstartIndex,intendIndex)從當(dāng)前StringBuffer對象實體中的字符序列中刪除一個子字符序列,并返回當(dāng)前對象的引用,這里startIndex為需刪除的首字符下標(biāo),而endIndex為需刪除的最后一個字符的下一個字符的下標(biāo)StringBufferreplace(intstartIndex,intendIndex,Stringstr)將當(dāng)前StringBuffer對象實體中的字符序列的一個子字符序列用參數(shù)str指定的字符串替換7.3時間日期類7.3.1Data類Date類在java.util包中。運用Date類的無參數(shù)構(gòu)造方法創(chuàng)建的對象可以獲得本地當(dāng)前時間。Date對象表示時間的默認依次是星期、月、日、小時、分、秒、年??梢赃\用DateFormat的子類SimpleDateFormat來實現(xiàn)日期的格式化。7.3時間日期類7.3.1Data類SimpleDateFormat有一個常用構(gòu)造方法:publicSimpleDateFormat(Stringpattern)該構(gòu)造方法可以用參數(shù)pattem指定的格式創(chuàng)建一個對象,該對象調(diào)用Format(Datadate)方法格式化時間對象date。7.3時間日期類7.3.1Data類【例7-2】用三種格式輸出時間。1)在包“ch7”中創(chuàng)建可視類“Ex7_2”,在程序界面中添加一個按鈕(參見例6-1),為按鈕添加事務(wù)代碼。2)程序運行結(jié)果如圖所示。7.3時間日期類7.3.2Calendar類Calendar類是一個抽象類,封裝在java.util包中,它為特定瞬間與一組諸如YEAR、MONTH、DAY_OF_MONTH、HOUR等日歷字段之間的轉(zhuǎn)換供應(yīng)了一些方法,并為操作日歷字段(例如獲得下星期的日期)供應(yīng)了一些方法。這些字段和方法被定義為protected。7.3時間日期類7.3.2Calendar類Calendar供應(yīng)了一個類方法getInstance,以獲得此類型的一個通用的對象。Calendar的getInstance方法返回一個Calendar對象:CalendarrightNow=Calendar.getInstance();7.3時間日期類7.3.2Calendar類【例7-3】運用Calendar類輸出當(dāng)前月份的日歷頁。1)在包“ch7”中創(chuàng)建可視類“Ex7_3”,在程序界面中添加一個標(biāo)簽。2)在類的createSShell()方法中添加代碼如下:3)程序運行結(jié)果如圖7-4所示。7.4數(shù)學(xué)類7.4.1Math類在編寫程序時,可能須要計算初等指數(shù)、對數(shù)、平方根和三角函數(shù)等。java.lang包中的Math類包含用于執(zhí)行基本數(shù)學(xué)運算的方法,這些方法可以干脆通過類名調(diào)用。另外,Math類還有兩個靜態(tài)變量,即E和PI,它們的值分別是2.718281828459045和3.141592653589793。7.4數(shù)學(xué)類7.4.1Math類Math類的常用方法方法含義publicstaticdoubleabs(doublea)返回double值的絕對值publicstaticdoublesin(doublea)返回角的三角正弦publicstaticdoublecos(doublea)返回角的三角余弦publicstaticdoubletan(doublea)返回角的三角正切publicstaticdoubleacos(doublea)返回一個值的反余弦;返回的角度范圍在0.0~pi之間publicstaticdoubleasin(doublea)返回一個值的反正弦;返回的角度范圍在-pi/2~pi/2之間publicstaticdoubleatan(doublea)返回一個值的反正切;返回的角度范圍在-pi/2~pi/2之間publicstaticdoubleexp(doublea)返回歐拉數(shù)e的double次冪的值publicstaticdoublepow(doublea,doubleb)返回a的b次方publicstaticdoublemax(doublea,doubleb)返回兩個double值中較大的一個publicstaticdoublemin(doublea,doubleb)返回兩個double值中較小的一個publicstaticdoubleceil(doublea)返回大于等于參數(shù)a的最小雙精度實數(shù)publicstaticdoublefloor(doublea)返回小于等于參數(shù)a的最大雙精度實數(shù)publicstaticlonground(doublea)將a四舍五入后返回publicstaticintround(floata)將a四舍五入后返回publicstaticdoublerandom()返回帶正號的double值,該值大于等于0.0且小于1.0。返回值是一個偽隨機選擇的數(shù),在該范圍內(nèi)(近似)均勻分布7.4數(shù)學(xué)類7.4.2NumberFormat類有時可能須要對輸出的數(shù)字結(jié)果進行必要的格式化,可以運用java.text包中的NumberFormat類,該類調(diào)用類方法:publicstaticfinalNumberFormatgetInstance()返回當(dāng)前默認語言環(huán)境的通用數(shù)值格式,即實例化一個NumberFormat對象,該對象調(diào)用publicfinalStringformat(doublenumber)方法可以實例化數(shù)字number。7.4數(shù)學(xué)類7.4.2NumberFormat類NumberFormat類的常用方法見表7-5。表7-5NumberFormat類的常用方法方法含義publicvoidsetMaximumIntegerDigits(intnewValue)設(shè)置數(shù)的整數(shù)部分所允許的最大位數(shù)publicvoidsetMinimumIntegerDigits(intnewValue)設(shè)置數(shù)的整數(shù)部分所允許的最小位數(shù)publicvoidsetMaximumFractionDigits(intnewValue)設(shè)置數(shù)的小數(shù)部分所允許的最大位數(shù)publicvoidsetMinimumFractionDigits(intnewValue)設(shè)置數(shù)的小數(shù)部分所允許的最小位數(shù)7.4數(shù)學(xué)類7.4.2NumberFormat類【例7-4】數(shù)字輸出樣式的格式化。1)在包“ch7”中創(chuàng)建可視類“Ex7_4”,在程序界面中添加一個按鈕。為按鈕添加事務(wù)代碼如下:2)程序運行結(jié)果如圖7-5所示。7.4數(shù)學(xué)類7.4.3BigInteger類程序有時須要處理大整數(shù),java.math包中的BigInteger類供應(yīng)隨意精度的整數(shù)運算.構(gòu)造方法:PublicBigInteger(Stringval)將字符串val轉(zhuǎn)換為整數(shù),然后創(chuàng)建一個十進制的BigInteger對象。該構(gòu)造方法可以發(fā)生NumberFormatException異樣,也就是說,字符串參數(shù)val中假如含有非數(shù)字字符就會發(fā)生NumberFormatException異樣。7.4數(shù)學(xué)類7.4.3BigInteger類表7-6BigInteger類的常用方法方法意義publicBigIntegeradd(BigIntegerval)返回當(dāng)前大整數(shù)對象與參數(shù)指定的大整數(shù)對象的和。publicBigIntegersubtract(Biglntegerval)返回當(dāng)前大整數(shù)對象與參數(shù)指定的大整數(shù)對象的差。publicBigIntegermultiply(BigIntegerval)返回當(dāng)前大整數(shù)對象與參數(shù)指定的大整數(shù)對象的積。publicBigIntegerdivide(BigIntegerval)返回當(dāng)前大整數(shù)對象與參數(shù)指定的大整數(shù)對象的商。publicBiglntegerremainder(BigIntegerval)返回當(dāng)前大整數(shù)對象與參數(shù)指定的大整數(shù)對象的余。publicintcompareTo(BigIntegerval)返回當(dāng)前大整數(shù)對象與參數(shù)指定的大整數(shù)的比較結(jié)果,返回值是1、-1或0,分別表示當(dāng)前大整數(shù)對象大于、小于或等于參數(shù)指定的大整數(shù)。publicBigIntegerabs()返回當(dāng)前大整數(shù)對象的絕對值。publicBigIntegerpow(intexponent)返回當(dāng)前大整數(shù)對象的exponent次冪。publicStringtoString()返回當(dāng)前大整數(shù)對象十進制的字符串表示。publicStringtoString(intp)返回當(dāng)前大整數(shù)對象p進制的字符串表示。7.4數(shù)學(xué)類7.4.3BigInteger類【例7-5】計算1+2!+...前30項和。1)在包“ch7”中創(chuàng)建可視類“Ex7_5”,在程序界面中添加一個按鈕(參見例7-1)。為按鈕添加事務(wù)代碼如下:2)程序運行結(jié)果如圖7-6所示。7.4數(shù)學(xué)類7.4.4Random類java.util.Random供應(yīng)了產(chǎn)生各種類型隨機數(shù)的方法,可以產(chǎn)生int、long、float、double以及Goussian等類型的隨機數(shù)。(1)Random():建立一個Random類的實例,隨機產(chǎn)生種子,用系統(tǒng)時間作為seed。(2)Random(longseed):建立一個Random類的實例,并指定隨機數(shù)種子。
7.4數(shù)學(xué)類7.4.4Random類Random類的方法有如下幾個:(1)booleannextBoolean()返回一個隨意的布爾值,可能是true也可能是false。(2)doublenextDouble()返回一個隨意的浮點數(shù),范圍在0.0與1.0之間。(3)floatnextFloat()返回一個隨意的浮點數(shù),范圍在0.0與1.0之間。
7.4數(shù)學(xué)類7.4.4Random類Random類的方法有如下幾個:(4)intnextInt()返回一個隨意的整數(shù)。(5)intnextInt(intn)返回一個隨意的整數(shù),范圍從0到n-1之間。(6)longnextLong()返回一個隨意的長整數(shù)。7.4數(shù)學(xué)類7.4.4Random類(7)voidsetSeed(longseed)設(shè)置隨機數(shù)種子。隨機數(shù)種子會影響隨機數(shù)的產(chǎn)生狀況,假如程序執(zhí)行時的隨機數(shù)種子和某一次執(zhí)行時的一樣,則產(chǎn)生的隨機數(shù)數(shù)列會和那次所產(chǎn)生的相同。假如要每次都產(chǎn)生不同的隨機數(shù)數(shù)列,一種方法是都不要運用setSeed方法設(shè)置隨機數(shù)種子;另一種方法是每次都設(shè)置不同的隨機數(shù)種子,該隨機數(shù)種子往往與當(dāng)前時間相聯(lián)系。7.5實訓(xùn)7.5.1實訓(xùn)目的1.了解并駕馭Java中常見類的運用。7.5.2實訓(xùn)內(nèi)容1.運用字符串類和字符類要求:運用StringBuffer類的各種方法?!緦嵱?xùn)7-1】編寫一個Java程序,輸入一個隨意字符串,然后統(tǒng)計其中各字符的數(shù)目。7.4數(shù)學(xué)類7.5.2實訓(xùn)內(nèi)容1.運用字符串類和字符類1)創(chuàng)建Java類。2)添加組件。3)為按鈕添加事務(wù)響應(yīng)代碼。4)運行程序。7.4數(shù)學(xué)類7.5.2實訓(xùn)內(nèi)容2.運用時間日期類要求:日歷程序中運用日期類Calendar,留意年份與月份數(shù)據(jù)的提取?!緦嵱?xùn)7-2】編寫一個Java程序,顯示月歷??梢酝ㄟ^按鈕選擇上一月和下一月。
7.4數(shù)學(xué)類7.5.2實訓(xùn)內(nèi)容2.運用時間日期類步驟如下:1)在包“ch7”中創(chuàng)建Java類“Prac7_2”,參見實訓(xùn)7-1.2)添加組件。用鼠標(biāo)右鍵單擊GUI程序界面的任何位置,在快捷菜單中選擇“SetLayout”→“null”。7.4數(shù)學(xué)類7.5.2實訓(xùn)內(nèi)容2.運用時間日期類在程序界面中“畫”出一個標(biāo)簽
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高中語文情感美文海的女兒下
- 采購決策對藥品成本影響的探討
- 四年級語文上冊第三組12小木偶的故事小木偶的故事續(xù)寫新人教版
- 跨國公司財務(wù)管理中的成本控制
- 輸血安全與公共衛(wèi)生的關(guān)系研究
- 跨區(qū)域?qū)W校合作在提升學(xué)生綜合素質(zhì)中的作用
- 跨境辦公設(shè)備的物流解決方案探討
- 大學(xué)部門招新策劃書(3篇)
- 2024年事業(yè)單位人員聘用合同(8篇)
- 跨行業(yè)溝通協(xié)作信息共享平臺建設(shè)新思路
- 從生產(chǎn)工藝角度詳解磷酸鐵鋰
- 全套橋梁施工技術(shù)交底記錄
- 《教師職業(yè)道德》全書word版
- 城市定制型商業(yè)醫(yī)療保險(惠民保)知識圖譜
- GB∕T 3836.31-2021 爆炸性環(huán)境 第31部分:由防粉塵點燃外殼“t”保護的設(shè)備
- AMDAR資料的分析和應(yīng)用
- 橋梁缺陷與預(yù)防
- 新蘇教版小學(xué)科學(xué)三年級下冊全冊教案(2022年春修訂)
- 弗洛姆異化理論
- AQL抽樣標(biāo)準(zhǔn)表xls2
- 人力資源部經(jīng)理崗位說明書
評論
0/150
提交評論