




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Java面向?qū)ο蟪绦蛟O(shè)計(jì)第2版 第9章配合第2版 例子源代碼一起使用Power point 制作:耿祥義 張躍平常用實(shí)用類第1頁(yè),共32頁(yè)。1導(dǎo)讀第2頁(yè),共32頁(yè)。29.1 String類 java.lang包中的String類來(lái)創(chuàng)建一個(gè)字符串變量,字符串變量是對(duì)象。 第3頁(yè),共32頁(yè)。39.1.1 構(gòu)造字符串對(duì)象 1常量對(duì)象:字符串常量對(duì)象是用雙引號(hào)括起的字符序列,例如:你好、12.97、boy等。 2字符串對(duì)象 聲明:String s; String類較常用構(gòu)造方法: String(s),String (char a),String(char a,int startIndex,int co
2、unt) 3引用字符串常量對(duì)象 string s1 = how are you; 第4頁(yè),共32頁(yè)。49.1.2 String 類的常用方法 1public int length():獲取一個(gè)字符串的長(zhǎng)度 2public boolean equals(String s):比較當(dāng)前字符串對(duì)象的實(shí)體是否與參數(shù)s指定的字符串的實(shí)體相同 例題9-13public boolean startsWith(String s) public boolean endsWith(String s)方法:判斷當(dāng)前字符串對(duì)象的前綴(后綴)是否是參數(shù)s指定的字符串 4public boolean regionMatch
3、es(int firstStart,String other,int ortherStart,int length) :從當(dāng)前字符串參數(shù)firstStart指定的位置開(kāi)始處,取長(zhǎng)度為length的一個(gè)子串,并將這個(gè)子串和參數(shù)other指定的一個(gè)子串進(jìn)行比較 。 例題9-2 其重載方法:public boolean regionMatches(boolean b,int firstStart,String other,int ortherStart,int length) 5public int compareTo(String s):按字典序與參數(shù)s指定的字符串比較大小 其相關(guān)方法: publ
4、ic int compareToIgnoreCase(String s) 例題9-3 6.public boolean contains(String s):判斷當(dāng)前字符串對(duì)象是否含有參數(shù)指定的字符串s 7.public int indexOf (String s):從當(dāng)前字符串的頭開(kāi)始檢索字符串s,并返回首次出現(xiàn)s的位置,其相關(guān)方法: indexOf(String s ,int startpoint), lastIndexOf (String s) 8public String substring(int startpoint):獲得一個(gè)當(dāng)前字符串的子串 其相關(guān)方法:substring(in
5、t start ,int end)9public String trim() :得到一個(gè)s去掉前后空格后的字符串對(duì)象。 例題9-4第5頁(yè),共32頁(yè)。59.1.3 符串與基本數(shù)據(jù)的相互轉(zhuǎn)化 java.lang包中的Integer類調(diào)用其類方法: public static int parseInt(String s) 可以將由“數(shù)字”字符組成的字符串,如12356,轉(zhuǎn)化為int型數(shù)據(jù),例如:int x; String s = 123456; x = Integer.parseInt(s); 類似地,使用java.lang包中的Byte、Short、Long、Float、Double類調(diào)相應(yīng)的類方
6、法可以將由“數(shù)字”字符組成的字符串,轉(zhuǎn)化為相應(yīng)的基本數(shù)據(jù)類型。 可以使用String 類的類方法public static String valueOf (byte n)等將形如123、1232.98等數(shù)值轉(zhuǎn)化為字符串??梢允褂肔ong類中的類方法public static String toBinaryString(long i)等得到整數(shù)的各種進(jìn)制的字符串表示。例題9-5 注 應(yīng)用程序中的main方法中的參數(shù)args能接受用戶從鍵盤(pán)鍵入的字符串。比如,使用解釋器java.exe來(lái)執(zhí)行主類 C:2000java Example9_5 12.89 35 78這時(shí),程序中的args0,arg1,
7、arg2分別得到字符串12.89,35和78。第6頁(yè),共32頁(yè)。69.1.4 對(duì)象的字符串表示 Object類有一個(gè)public String toString()方法,一個(gè)對(duì)象通過(guò)調(diào)用該方法可以獲得該對(duì)象的字符串表示。一個(gè)對(duì)象調(diào)用toString()方法返回的字符串的一般形式為: 創(chuàng)建對(duì)象的類的名字對(duì)象的引用的字符串表示 例題9-6第7頁(yè),共32頁(yè)。79.1.5 字符串與字符、字節(jié)數(shù)組 1字符串與字符數(shù)組 String 類的構(gòu)造方法:String(char)和String(char,int offset,int length)分別用字符數(shù)組中的全部字符和部分字符創(chuàng)建字符串對(duì)象 String類
8、提供了將字符串存放到數(shù)組中的方法:public void getChars(int start,int end,char c,int offset ) 將字符串中的全部字符存放在一個(gè)字符數(shù)組中的方法:public char toCharArray() 例題9-72字符串與字節(jié)數(shù)組 String(byte)用指定的字節(jié)數(shù)組構(gòu)造一個(gè)字符串對(duì)象。String(byte,int offset,int length) 用指定的字節(jié)數(shù)組的一部分,即從數(shù)組起始位置offset開(kāi)始取length個(gè)字節(jié)構(gòu)造一個(gè)字符串對(duì)象。 public byte getBytes() 方法使用平臺(tái)默認(rèn)的字符編碼,將當(dāng)前字符串轉(zhuǎn)
9、化為一個(gè)字節(jié)數(shù)組。 public byte getBytes(String charsetName) 使用參數(shù)指定字符編碼,將當(dāng)前字符串轉(zhuǎn)化為一個(gè)字節(jié)數(shù)組。 例題9-8第8頁(yè),共32頁(yè)。89.1.6 正則表達(dá)式及字符串的替換與分解 1正則表達(dá)式 一個(gè)正則表達(dá)式是含有一些具有特殊意義字符的字符串,這些特殊字符稱作正則表達(dá)式中的元字符。比如 “dhello”中的d就是有特殊意義的元字符,代表0到9中的任何一個(gè)。字符串對(duì)象調(diào)用 public boolean matches(String regex)方法可以判斷當(dāng)前字符串對(duì)象是否和參數(shù)regex指定的正則表達(dá)式匹配。參考表9.1,表9.2 。 2字符
10、串的替換 字符串對(duì)象調(diào)用public String replaceAll(String regex,String replacement)方法返回一個(gè)字符串,該字符串是當(dāng)前字符串中所有和參數(shù)regex指定的正則表達(dá)式匹配的子字符串被參數(shù)replacement指定的字符串替換后的字符串,例如:String result=12hello567.replaceAll(d+,你好);那么result就是:“你好hello你好” 例題9-93字符串的分解 字符串調(diào)用public String split(String regex)使用參數(shù)指定的正則表達(dá)式regex做為分隔標(biāo)記分解出其中的單詞,并將分解出
11、的單詞存放在字符串?dāng)?shù)組中。例如,對(duì)于字符串:str=“1931年09月18日晚,日本發(fā)動(dòng)侵華戰(zhàn)爭(zhēng),請(qǐng)記住這個(gè)日子!”; 使用正則表達(dá)式:String regex=D+; 做為分隔標(biāo)記分解出str中的單詞String digitWord=str.split(regex); 例題9-10那么,digitWord0、digitWord1和digitWord2就分別是1931、09和18。 第9頁(yè),共32頁(yè)。99.2 StringBuffer類 9.2.1 StringBuffer對(duì)象的創(chuàng)建 String s = new String(我喜歡學(xué)習(xí)); StringBuffer buffer = new
12、 StringBuffer(“我喜歡學(xué)習(xí)”); buffer.append(數(shù)學(xué)); StringBuffer類有三個(gè)構(gòu)造方法:1StringBuffer()2StringBuffer(int size)3StringBuffer(String s) 例題9-11第10頁(yè),共32頁(yè)。109.2.2 StringBuffer類的常用方法 1StringBuffer append(String s):將一個(gè)字符串對(duì)象追加到當(dāng)前StringBuffer對(duì)象中 StringBuffer append(int n):將一個(gè)int型數(shù)據(jù)轉(zhuǎn)化為字符串對(duì)象后再追加到當(dāng)前StringBuffer對(duì)象中 Stri
13、ngBuffer append(Object o):將一個(gè)Object對(duì)象的字符串表示追加到當(dāng)前StringBuffer對(duì)象中 類似的方法還有: StringBuffer append(long n),StringBuffer append(boolean n), StringBuffer append(float n),StringBuffer append(double n), StringBuffer append(char n)2public chat charAt(int n ):得到參數(shù)n指定的置上的單個(gè)字符 public void setCharAt(int n ,char ch
14、):將當(dāng)前StringBuffer對(duì)象實(shí)體中的字符串位置n處的字符用參數(shù)ch指定的字符替換3StringBuffer insert(int index, String str) :將參數(shù)str指定的字符串插入到參數(shù)index指定的位置 4public StringBuffer reverse() :將該對(duì)象實(shí)體中的字符翻轉(zhuǎn)5StringBuffer delete(int startIndex, int endIndex) :從當(dāng)前StringBuffer對(duì)象實(shí)體中的字符串中刪除一個(gè)子字符串 其相關(guān)方法: deleteCharAt(int index) 刪除當(dāng)前StringBuffer對(duì)象實(shí)體的
15、字符串中index位置處的一個(gè)字符。6. StringBuffer replace( int startIndex ,int endIndex, String str) :將當(dāng)前StringBuffer對(duì)象實(shí)體中的字符串的一個(gè)子字符串用參數(shù)str指定的字符串替換 例題9-12第11頁(yè),共32頁(yè)。119. 3 StringTokenizer類 StringTokenizer類在java.util包中,有兩個(gè)常用的構(gòu)造方法:StringTokenizer(String s):為字符串s構(gòu)造一個(gè)分析器。使用默認(rèn)的分隔標(biāo)記,即空格符(若干個(gè)空格被看做一個(gè)空格)、換行符、回車符、Tab符、進(jìn)紙符。 St
16、ringTokenizer(String s, String delim):為字符串s構(gòu)造一個(gè)分析器。參數(shù)dilim中的字符被作為分隔標(biāo)記 。 StringTokenizer對(duì)象稱作一個(gè)字符串分析器可以使用下列方法: nextToken():逐個(gè)獲取字符串中的語(yǔ)言符號(hào)(單詞),字符串分析器中的負(fù)責(zé)計(jì)數(shù)的變量的值就自動(dòng)減一 。 hasMoreTokens():只要字符串中還有語(yǔ)言符號(hào),即計(jì)數(shù)變量的值大于0,該方法就返回true,否則返回false。 countTokens():得到分析器中計(jì)數(shù)變量的值。 例題9-13 例題9-14第12頁(yè),共32頁(yè)。129.4 Scanner類 使用默認(rèn)分隔標(biāo)記
17、解析文件 創(chuàng)建Scanner對(duì)象,并將要解析的字符串傳遞給所構(gòu)造的對(duì)象例如,對(duì)于字符串 String s = telephone cost 876 dollar.Computer cost 2398.89 dollar.;為了解析出s中的單詞,可以如下構(gòu)造一個(gè)Scanner對(duì)象: Scanner scanner = new Scanner(s);那么scanner默認(rèn)地使用空格做為分隔標(biāo)記來(lái)解析字符串中的單詞。也可以讓Scanner Scanner對(duì)象調(diào)用方法:useDelimiter(正則表達(dá)式);將正則表達(dá)式做為分隔標(biāo)記,即Scanner對(duì)象在解析字符串時(shí),把與正則表達(dá)式匹配的字符串做為分
18、隔標(biāo)記。 例題9-15Scanner對(duì)象解析字符串的特點(diǎn)如下: scanner調(diào)用next()方法依次返回被解析的字符串s中的單詞,如果s最后一個(gè)單詞已被next()方法返回,scanner調(diào)用hasNext()將返回false,否則返回true。對(duì)于被解析的字符串s中的數(shù)字型的單詞,比如876,2398.89等,scanner可以用nextInt()或nextDouble()方法來(lái)代替next()方法,即scanner可以調(diào)用nextInt()或nextDouble()方法將數(shù)字型單詞轉(zhuǎn)化為int或double數(shù)據(jù)返回。如果單詞不是數(shù)字型單詞,scanner調(diào)用nextInt()或nextD
19、ouble()方法將發(fā)生InputMismatchException異常,在處理異常時(shí)可以調(diào)用next()方法返回該非數(shù)字化單詞。第13頁(yè),共32頁(yè)。139.5 Date和Clendar類 9.5.1 Date對(duì)象 Date類在java.util包中。使用Date類的無(wú)參數(shù)構(gòu)造方法創(chuàng)建的對(duì)象可以獲取本地當(dāng)前時(shí)間。 計(jì)算機(jī)時(shí)間的“公元”設(shè)置在1970.年1月1日0時(shí)(格林威治時(shí)間),可以根據(jù)這個(gè)時(shí)間使用Date的帶參數(shù)的構(gòu)造方法: Date(long time) 例:Date date1=new Date(1000), date2=new Date(-1000); date1就是1970年01月
20、01日08時(shí)00分01秒、date2就是1970年01月01日07時(shí)59分59秒 可以用System類的靜態(tài)方法 public long currentTimeMillis()獲取系統(tǒng)當(dāng)前時(shí)間,如果運(yùn)行Java程序的本地時(shí)區(qū)是北京時(shí)區(qū),這個(gè)時(shí)間是從1970年1月1日08點(diǎn)到目前時(shí)刻所走過(guò)的毫秒數(shù)。 Date對(duì)象表示時(shí)間的默認(rèn)順序是:星期、月、日、小時(shí)、分、秒、時(shí)區(qū),年。例如:Tue Mar 12 10:13:58 CST 2013。 第14頁(yè),共32頁(yè)。149.5.2 Calendar對(duì)象 1 Calendar類在java.util包中。使用Calendar類的static方法 getInst
21、ance()可以初始化一個(gè)日歷對(duì)象,如:Calendar calendar= Calendar.getInstance();2 calendar對(duì)象可以調(diào)用方法:public final void set(int year,int month,int date)public final void set(int year,int month,int date,int hour,int minute)public final void set(int year,int month, int date, int hour, int minute,int second)將日歷翻到任何一個(gè)時(shí)間 3 c
22、alendar對(duì)象常用方法 public int get(int field) :可以獲取有關(guān)年份,月份,小時(shí),星期等信息 例如 calendar.get(Calendar.MONTH); calendar.get(DAY_OF_WEEK); public long getTimeInMillis() :可以將時(shí)間表示為毫秒。 例題9-16,例題9-17第15頁(yè),共32頁(yè)。159.5.3 日期格式化 1 使用SimpleDateFormat類 使用java.util包中的DateFormat的子類SimpleDateFormat類來(lái)實(shí)現(xiàn)日期的格式化。SimpleDateFormat有一個(gè)常用構(gòu)
23、造方法: public SimpleDateFormat(String pattern); 該構(gòu)造方法可以用參數(shù)pattern指定的格式創(chuàng)建一個(gè)對(duì)象,該對(duì)象調(diào)用:public String format(Date date)方法格式化時(shí)間對(duì)象date。 pattern是由普通字符和一些稱作格式符所組成的字符序列。format 方法在格式化date時(shí),將用date中的相應(yīng)的時(shí)間替換相應(yīng)的格式符,簡(jiǎn)單地說(shuō),,format方法返回的字符串就是把pattern中的格式符用相應(yīng)時(shí)間替換后的字符序列。 例題9-18第16頁(yè),共32頁(yè)。162 format方法 可以使用更為方便的Formatter類,F(xiàn)or
24、matter類的format方法: format(格式化模式 , 日期列表)按著“格式化模式” 返回 “日期列表”中所列各個(gè)日期中所含數(shù)據(jù)(年,月,日,小時(shí)等數(shù)據(jù))的字符串表示。 目前Java已經(jīng)將format方法封裝到String類中,是String類的的一個(gè)靜態(tài)方法,因此程序可以直接使用String類調(diào)用format方法對(duì)日期進(jìn)行格式化。 格式化模式 format方法中的“格式化模式”是一個(gè)用雙引號(hào)括起的字符序列(字符串),該字符序列中的字符由時(shí)間格式符和普通字符所構(gòu)成。如日期:%ty-%tm-%td例如:String s = String.format(%tY年%tm月%td日,new
25、Date(),new Date(),new Date();那么s就是2011年02月10日 日期列表 format方法中的“日期列表”可以是用逗號(hào)分隔的Calendar對(duì)象或Date對(duì)象。要保證format方法“格式化模式”中的格式符的個(gè)數(shù)與“日期列表”中列出的日期個(gè)數(shù)相同。format方法默認(rèn)按從左到右的順序使用“格式化模式”中的格式符來(lái)格式“日期列表”中對(duì)應(yīng)的日期,而“格式化模式”中的普通字符保留原樣。第17頁(yè),共32頁(yè)。173 格式化同一日期 希望用幾個(gè)格式符號(hào)來(lái)格式化“日期列表”中的同一個(gè)日期,可以在“格式化模式”中使用“”,比如:%ty-%tm-%td中的三個(gè)格式符將會(huì)格式化同一日期
26、,即含有“”的格式符和它前面的格式符一同格式化同一個(gè)日期,例如: String s = String.format(%ty年%tm月%td日,new Date();那么%tm和%td都格式化new Date(),因此字符串s就是:11年02月10日。以下是常用的日期格式符及作用: %tY 將日期中的“年”格式化為4位形式,例如,1999,2002。 %ty 將日期中的“年”格式化為2位形式(帶前導(dǎo)零),例如,99,02。 %tm 將日期中的“月”格式化為2位形式(帶前導(dǎo)零),即01-13,其中01是一年的第一個(gè)月(13是支持陰歷所需的一個(gè)特殊值)。 等等。第18頁(yè),共32頁(yè)。189.5.4 不
27、同區(qū)域的星期格式 不同國(guó)家的星期的簡(jiǎn)稱或全稱有很大的不同,例如美國(guó)用Thu(Thursday)簡(jiǎn)稱(全稱)星期四、日本用“木”(木曜日)簡(jiǎn)稱(全稱)星期四,意大利用gio(gioved)簡(jiǎn)稱(全稱)星期四等。如果想用特定地區(qū)的星期格式來(lái)表示日期中的星期,可以用format的重載方法:format (Locale locale,格式化模式 , 日期列表);其中的參數(shù)locale是一個(gè)Locale類的實(shí)例,用于表示地域。Locale類的static常量都是Locale對(duì)象,其中US是表示美國(guó)的static常量。 比如,假設(shè)時(shí)間是2015年3月12日,該日是星期四,如果format方法中的參數(shù)loc
28、al取值:Locale.US,那么%tA得到的結(jié)果就是Thursday,如果format方法中的參數(shù)local取值:Locale. JAPAN,那么%tA得到的結(jié)果就是木曜日。 注:如果format方法不使用Locale參數(shù)格式化日期,當(dāng)前應(yīng)用程序所在系統(tǒng)的地區(qū)設(shè)置是中國(guó),那么相當(dāng)于locale參數(shù)取Locale.CHINA。 例題9-19第19頁(yè),共32頁(yè)。199. 6 Math、BigInteger和Random類 9.6.1 Math類 Math類在java.lang包中。Math類包含許多用來(lái)進(jìn)行科學(xué)計(jì)算的類方法,這些方法可以直接通過(guò)類名調(diào)用。另外,Math類還有兩個(gè)靜態(tài)常量,它們分別
29、是:E 2.7182828284590452354和PI 3.14159265358979323846。以下是Math類的常用類方法:*public static long abs(double a) 返回a的絕對(duì)值。*public static double max(double a,double b) 返回a、b的最大值。*public static double min(double a,double b) 返回a、b的最小值。*public static double random() 產(chǎn)生一個(gè)0到1之間的隨機(jī)數(shù)(不包括0和1)。*public static double pow(do
30、uble a,double b) 返回a的b次冪。*public static double sqrt(double a) 返回a的平方根。*public static double log(double a) 返回a的對(duì)數(shù)。*public static double sin(double a) 返回正弦值。*public static double asin(double a) 返回反正弦值。第20頁(yè),共32頁(yè)。209.6.2 BigInteger類 1 java.math包中的BigInteger類提供任意精度的整數(shù)運(yùn)算。可以使用構(gòu)造方法: public BigInteger(String
31、 val)構(gòu)造一個(gè)十進(jìn)制的BigInteger對(duì)象。 2 以下是BigInteger類的常用類方法:*public BigInteger add(BigInteger val) 返回當(dāng)前大整數(shù)對(duì)象與參數(shù)指定的大整數(shù)對(duì)象的和。*public BigInteger subtract(BigInteger val)返回當(dāng)前大整數(shù)對(duì)象與參數(shù)指定的大整數(shù)對(duì)象的差。* public BigInteger multiply(BigInteger val)返回當(dāng)前大整數(shù)對(duì)象與參數(shù)指定的大整數(shù)對(duì)象的積。*public BigInteger divide(BigInteger val)返回當(dāng)前大整數(shù)對(duì)象與參數(shù)指定
32、的大整數(shù)對(duì)象的商。*public BigInteger remainder(BigInteger val)返回當(dāng)前大整數(shù)對(duì)象與參數(shù)指定的大整數(shù)對(duì)象的余。*public int compareTo(BigInteger val) 返回當(dāng)前大整數(shù)對(duì)象與參數(shù)指定的大整數(shù)的比較結(jié)果,返回值是1、-1或0,分別表示當(dāng)前大整數(shù)對(duì)象大于、小于或等于參數(shù)指定的大整數(shù)。*public BigInteger abs() 返回當(dāng)前大整數(shù)對(duì)象的絕對(duì)值。*public BigInteger pow(int a) 返回當(dāng)前大整數(shù)對(duì)象的a次冪。*public String toString() 返回當(dāng)前大整數(shù)對(duì)象十進(jìn)制的字
33、符串表示。*public String toString(int p) 返回當(dāng)前大整數(shù)對(duì)象p進(jìn)制的字符串表示。 例題9-20第21頁(yè),共32頁(yè)。219.6.3 Romdom類 可以使用Math類調(diào)用其類方法random()返回一個(gè)0至1之間的隨機(jī)數(shù)(不包括0和1),例如,下列代碼得到1至100之間的一個(gè)隨機(jī)整數(shù)(包括1和100):(int)(Math.random()*100)+1; Java提供了更為靈活的用于獲得隨機(jī)數(shù)的Romdom類(該類在java.util包中)。使用Romdom類的如下構(gòu)造方法: public Random(); public Random(long seed);創(chuàng)建
34、Rondom對(duì)象,其中第二個(gè)構(gòu)造方法使用參數(shù)seed指定的種子創(chuàng)建一個(gè)Rondom對(duì)象。 習(xí)慣地將Rondom對(duì)象稱為隨機(jī)數(shù)生成器。例如下列隨機(jī)數(shù)生成器random調(diào)用不帶參數(shù)的nextInt()方法返回一個(gè)隨機(jī)整數(shù):Random random=new Random();random.nextInt();相關(guān)方法及使用: nextInt(int m)方法 ,例如 random.nextInt(100); 返回一個(gè)0至100之間的隨機(jī)整數(shù)(包括0,但不包括100)。 nextBoolean()方法,例如random.nextBoolean(); 返回一個(gè)隨機(jī)boolean值。第22頁(yè),共32頁(yè)。
35、229. 7 DecimalFormat類 DecimalFormat類在java.text包中。 可以用DecimalFormat類對(duì)輸出的數(shù)字結(jié)果進(jìn)行必要的格式化 。第23頁(yè),共32頁(yè)。239.7.1 格式化數(shù)字 1 格式化整數(shù)位和小數(shù)位 DecimalFormat對(duì)象調(diào)用:public final String format(double number);對(duì)參數(shù)指定的數(shù)字進(jìn)行格式化,并將格式化結(jié)果以String對(duì)象返回。例如:DecimalFormat format=new DecimalFormat(00000.00); 那么 String result=format.format(6
36、789.8765);得到的result是:“06789.88” 2 整數(shù)位的分組 當(dāng)希望將數(shù)字的整數(shù)部分分組(用逗號(hào)分隔),可以在DecimalFormat對(duì)象中的例如:將 “123456789.9876543” 的整數(shù)部分按4位分組的一個(gè)格式化模式是:“#,#,#,#00.00” 使用該模式格式化上述數(shù)字的結(jié)果是:1,2345,6789.99 3 格式化為百分?jǐn)?shù)或千分?jǐn)?shù) 在DecimalFormat對(duì)象中的數(shù)字格式化模式尾加“%”,可以將數(shù)字格式化為百分?jǐn)?shù)、尾加“u2030”將數(shù)字格式化為千分?jǐn)?shù)。 4 格式化為科學(xué)計(jì)數(shù) 在DecimalFormat對(duì)象中的數(shù)字格式化模式尾加“E0”,可以將數(shù)
37、字格式化為科學(xué)計(jì)數(shù)。 5 格式化為貨幣值 在DecimalFormat對(duì)象中的數(shù)字格式化模式尾加貨幣符號(hào),例如“$”“¥”,可以將數(shù)字格式化為帶貨幣符號(hào)的串。 第24頁(yè),共32頁(yè)。249.7.2 將格式化字符串轉(zhuǎn)化為數(shù)字 根據(jù)要轉(zhuǎn)化的字符串創(chuàng)建一個(gè)DecimalFormat對(duì)象,并將適合該字符串的格式化模式傳遞給該對(duì)象,例如: DecimalFormat df = new DecimalFormat(#,#00.000$);那么,df調(diào)用parse(String s)方法將返回一個(gè)Number對(duì)象,例如:Number num = df.parse(3,521,563.345$);那么,Numb
38、er對(duì)象調(diào)用方法可以返回該對(duì)象中含有的數(shù)字, 例如:double d=number.doubleValue(); d的值是3521563.345。 例題9-21第25頁(yè),共32頁(yè)。259. 8 Pattern與Match類 Java提供了專門(mén)用來(lái)進(jìn)行模式匹配的Pattern類和Match類,這些類在java.util.regex包中。 第26頁(yè),共32頁(yè)。269.8.1 模式對(duì)象 1 使用Pattern類創(chuàng)建一個(gè)對(duì)象,稱作模式對(duì)象,模式對(duì)象是對(duì)正則表達(dá)式的封裝。 2 Pattern類調(diào)用類方法compile(String regex)返回一個(gè)模式對(duì)象,其中的參數(shù)regex是一個(gè)正則表達(dá)式,稱作
39、模式對(duì)象使用的模式。 例如 Pattern p = Ppile(hellod); 3 Pattern類也可以調(diào)用類方法compile(String regex, int flags)返回一個(gè)Pattern對(duì)象 。第27頁(yè),共32頁(yè)。279.8.2 匹配對(duì)象 模式對(duì)象p調(diào)用matcher(CharSequence input)方法返回一Matcher對(duì)象m,稱作匹配對(duì)象。下列幾個(gè)方法是Matcher對(duì)象m常用的方法:*public boolean find() :尋找input和regex匹配的下一子序列*public boolean matches():判斷input是否完全和regex匹配*public boolean lookingAt():判斷從input的開(kāi)始位置是否有和regex匹配的子序列public boolean find(int start):判斷input從參數(shù)start指定位置開(kāi)始是否有和regex匹配的子序列 public String replaceAll(String replacement):Matcher對(duì)象m調(diào)用該方法可以返回一個(gè)字符串 public String replaceFirst(String replacement):Matcher對(duì)象m調(diào)用該方法可以返回一個(gè)字符
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 蚌埠國(guó)資委管理辦法規(guī)定
- 行政執(zhí)法制服裝管理辦法
- 西安市無(wú)證項(xiàng)目管理辦法
- 衡陽(yáng)市食品衛(wèi)生管理辦法
- 襄陽(yáng)市電子證照管理辦法
- 西藏園林給排水管理辦法
- 許昌市公車管理辦法細(xì)則
- 課程標(biāo)準(zhǔn)制訂及管理辦法
- 財(cái)務(wù)管理與人資管理辦法
- 貴州企業(yè)管理培訓(xùn)管理辦法
- 學(xué)校衛(wèi)生工作手冊(cè)
- 公租房運(yùn)營(yíng)管理服務(wù)方案(技術(shù)方案)
- 2024年初級(jí)消防設(shè)施操作員考試題庫(kù)800題(基礎(chǔ)知識(shí)+實(shí)操技能)
- 轉(zhuǎn)讓美容院店鋪合同
- YC/T 613-2024煙草企業(yè)有限空間作業(yè)安全技術(shù)規(guī)范
- 招標(biāo)售后服務(wù)方案及服務(wù)承諾
- 刮痧操作流程及評(píng)分標(biāo)準(zhǔn)
- 歇后語(yǔ)大全500條
- 建筑用真空陶瓷微珠絕熱系統(tǒng)應(yīng)用技術(shù)規(guī)程
- 工作場(chǎng)所有害因素職業(yè)接觸限值-第2部分-物理因素
- 2020新編教材八下《桃花源記》正規(guī)電子書(shū)(課文+注釋+譯文)
評(píng)論
0/150
提交評(píng)論