




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、Java 2實(shí)用教程(第版)教學(xué)課件,課件制作耿祥義張躍平 配合例子代碼一同使用 例子代碼可登錄下載,第章字符串,5.1 字符串 5.2 字符串的常用方法 5.3 字符串與基本數(shù)據(jù)的相互轉(zhuǎn)化 5.4 對象的字符串表示 5.5 StringTokenizer類 5.6 符串與字符、字節(jié)數(shù)組 5.7 StringBuffer類 5.8 正則表達(dá)式,5.1 字符串,Java使用java.lang包中的String類來創(chuàng)建一個字符串變量,因此字符串變量是對象。 1.符串常量 如,“你好”,“1234.987”,“weqweo”。 字符串常量是個對象,因此可以把字符串常量的應(yīng)用賦值給一個字符串變量. 如
2、:String s1,s2; s1=”how are you” s2=”how are you” 這樣,s1和s2 具有相同的引用,因而具有相同的實(shí)體。s1和s2內(nèi)存示意圖,5.1 字符串,2.創(chuàng)建字符串 使用String類的構(gòu)造方法,例如: String s=new String(we are students); 構(gòu)造方法: 1)public String() /創(chuàng)建一個空的字符串對象。 2)public String(bytebytes) /用字節(jié)數(shù)組創(chuàng)建一個字符串對象。 如 byte buf=new byte1024; String ss=new String(buf); 例如5-1,
3、5.1 字符串,3)publicString(bytebytes,intoffset,intlength)/提取字節(jié)數(shù)組的一部分構(gòu)建一個字符串對象,length指取得字節(jié)的個數(shù)。 4)public String(charvalue) /用一個字符數(shù)組創(chuàng)建一個字符串對象。 如: char data = a, b, c; String str = new String(data); 等同于String str = abc;,5.2 字符串的常用方法,(1)public int length() length()方法可以獲取一個字符串的長度 ,如: String tom= 我們是學(xué)生; tom.le
4、ngth()的值5。,public boolean equals(String s),字符串對象調(diào)用String類中的equals方法,比較當(dāng)前字符串對象的實(shí)體是否與參數(shù)指定的字符串s的實(shí)體相同. 如: String tom=new String( we are students); String boy=new String( We are students); String jerry= new String(we are students); tom.equals(boy)的值是false,tom.equals(jerry)的值是 true。 public boolean equalsI
5、gnoreCase(StringanotherString),public boolean startsWith(String s)public boolean endsWith(String s),字符串對象調(diào)用startsWith(String s)方法,判斷當(dāng)前字符串對象的前綴是否是參數(shù)指定的字符串s . 例如: String tom=”2203089999”,jak=”210483209”; 則:tom.startsWith(“220”);的值是true; jak.startsWith(“220”); 的值是false; 字符串對象調(diào)用endsWith(String s) 方法,判斷當(dāng)
6、前字符串的后綴是否是字符串s .,public boolean regionMatches(int firstStart,String other,int ortherStart,int length),字符串調(diào)用regionMatches(int firstStart,String other,int ortherStart,int length)方法,從當(dāng)前字符串參數(shù)firstStart指定的位置開始處,取長度為length的一個子串,并將這個子串和參數(shù)other指定的一個子串進(jìn)行比較,其中,other指定的子串是從參數(shù)othertStart指定的位置開始,從other中取長度為lengt
7、h的一個子串。如果兩個子串相同該方法就返回true,否則返回false。 例如5-2,public int compareTo(String s),字符串對象可以使用String類中的compareTo(String s)方法,按字典序與參數(shù)s指定的字符串比較大小。如果當(dāng)前字符串與s相同,該方法返回值0;如果當(dāng)前字符串對象大于s,該方法返回正值;如果小于s,該方法返回負(fù)值。 例如 5-3 public int compareToIgnoreCase(Stringstr) 字符串對象調(diào)用該方法,按字典序于參數(shù)指定的字符串比較大小,忽略大小寫;,public int indexOf (String
8、 s),字符串調(diào)用方法indexOf (String s)從當(dāng)前字符串的頭開始檢索字符串s,并返回首次出現(xiàn)s的位置。如果沒有檢索到字符串s,該方法返回的值是-1。 字符串調(diào)用indexOf(String s ,int startpoint)方法從當(dāng)前字符串的startpoint位置處開始檢索字符串s,并返回首次出現(xiàn)s的位置。如果沒有檢索到字符串s,該方法返回的值是-1。 字符串調(diào)用lastIndexOf (String s)方法從當(dāng)前字符串的頭開始檢索字符串s,并返回最后出現(xiàn)s的位置。如果沒有檢索到字符串s,該方法返回的值是-1。,public String substring(int sta
9、rtpoint),字符串對象調(diào)用該方法獲得一個當(dāng)前字符串的子串,該子串是從當(dāng)前字符串的startpoint處截取到字符串的末尾所得到的字符串。 字符串對象調(diào)用substring(int start ,int end)方法獲得一個當(dāng)前字符串的子串,該子串是從當(dāng)前字符串的start處截取到end處所得到的字符串,但不包括end處所對應(yīng)的字符。 例如5-4,public String replaceAll(String oldString ,String newString),字符串對象s調(diào)用該方法可以獲得一個串對象,這個串對象是通過用參數(shù)newString指定的字符串替換s中由oldString指
10、定的所有字符串而得到的字符串。,public String trim(),一個字符串s通過調(diào)用方法trim()得到一個字符串對象,該字符串對象是s去掉前后空格后的字符串。,5.3 字符串與基本數(shù)據(jù)的相互轉(zhuǎn)化,使用java.lang包中的Byte、Short、Integer 、 Long、Float、Double類調(diào)相應(yīng)的類方法: public static byte parseByte(String s) throws NumberFormatException public static short parseShort(String s) throws NumberFormatExcept
11、ion public static short parseInt(String s) throws NumberFormatException public static long parseLong(String s) throws NumberFormatException public static float parseFloat(String s) throws NumberFormatException public static double parseDouble(String s) throws NumberFormatException 可以將“數(shù)字”格式的字符串,轉(zhuǎn)化為相
12、應(yīng)的基本數(shù)據(jù)類型。 例如5-5,5.4 對象的字符串表示,在子類的講述中我們講過,所有的類都默認(rèn)是java.lang包中Object類的子類或間接子類。Object類有一個public 方法toString(),一個對象通過調(diào)用該方法可以獲得該對象的字符串表示。 例如5-6,5.5 StringTokenizer類,當(dāng)我們分析一個字符串并將字符串分解成可被獨(dú)立使用的單詞時,可以使用java.util包中的StringTokenizer類,該類有兩個常用的構(gòu)造方法: StringTokenizer(String s) 為字符串s構(gòu)造一個分析器。使用默認(rèn)的分隔符集合,即空格符(若干個空格被看做一個
13、空格)、換行符、回車符、Tab符、進(jìn)紙符。 StringTokenizer(String s, String delim) 為字符串s構(gòu)造一個分析器。參數(shù)dilim中的字符被作為分隔符。,我們把一個StringTokenizer對象稱作一個字符串分析器。一個分析器可以使用nextToken()方法逐個獲取字符串中的語言符號(單詞),每當(dāng)調(diào)用nextToken()時,都將在字符串中獲得下一個語言符號,每當(dāng)獲取到一個語言符號,字符串分析器中的負(fù)責(zé)計(jì)數(shù)的變量的值就自動減一,該計(jì)數(shù)變量的初始值等于字符串中的單詞數(shù)目 例如5-7,5.6 字符串與字符、字節(jié)數(shù)組,public void getChars(
14、int start,int end,char c,int offset ) 字符串調(diào)用getChars方法將當(dāng)前字符串中的一部分字符拷貝到參數(shù)c指定的數(shù)組中。將字符串中從位置start到end-1位置上的字符拷貝的數(shù)組c中,并從數(shù)組c的offset處開始存放這些字符。需要注意的是,必須保證數(shù)組c能容納下要被拷貝的字符。 public char toCharArray() 字符串對象調(diào)用該方法可以初始化一個字符數(shù)組,該數(shù)組的長度與字符串的長度相等,并將字符串對象的全部字符拷貝到該數(shù)組中。 例如:5-9,String(byte,int offset,int length) 該構(gòu)造方法使用平臺默認(rèn)的
15、字符編碼,用指定的字節(jié)數(shù)組的一部分,即從數(shù)組起始位置offset開始取length個字節(jié)構(gòu)造一個字符串對象。 public byte getBytes() 使用平臺默認(rèn)的字符編碼,將當(dāng)前字符串轉(zhuǎn)化為一個字節(jié)數(shù)組。 例如5-10,5.7 StringBuffer類,String類創(chuàng)建的字符串對象是不可修改的,也就是說,String字符串不能修改、刪除或替換字符串中的某個字符,即String對象一旦創(chuàng)建,那么實(shí)體是不可以再發(fā)生變化的. StringBuffer類能創(chuàng)建可修改的字符串序列,也就是說,該類的對象的實(shí)體的內(nèi)存空間可以自動的改變大小,便于存放一個可變的字符序列。,5.7 StringBuf
16、fer類,StringBuffer類的構(gòu)造方法: public StringBuffer() public StringBuffer(Stringstr) 用字符串str創(chuàng)建一個StringBuffer對象,5.7 StringBuffer類,StringBuffer類的常用方法 1)public StringBuffer append(charc) 如:x = a + 4 + c; x = new StringBuffer().append(a).append(4) .append(c).toString() 2)public char charAt(intindex) 得到參數(shù)index指定位置上的單個字符 3)public void setCharAt(int
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國鋁擠壓行業(yè)市場運(yùn)營狀況及發(fā)展趨勢分析報(bào)告
- 2025-2030年中國金屬波紋補(bǔ)償器市場發(fā)展?fàn)顩r及前景趨勢分析報(bào)告
- 2025天津市安全員《B證》考試題庫及答案
- 2025-2030年中國聚對苯二甲酸丁行業(yè)投資戰(zhàn)略決策研究報(bào)告
- 2025-2030年中國紡織機(jī)械制造產(chǎn)業(yè)十三五規(guī)劃及投資戰(zhàn)略研究報(bào)告
- 2025-2030年中國石斑魚市場運(yùn)行狀況與十三五規(guī)劃研究報(bào)告
- 2025-2030年中國電熱水器行業(yè)競爭格局及投資戰(zhàn)略研究報(bào)告
- 2025年江西省建筑安全員A證考試題庫附答案
- 欽州幼兒師范高等??茖W(xué)?!缎履茉雌嚱Y(jié)構(gòu)與原理》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025浙江省安全員考試題庫
- 借哪吒精神燃開學(xué)斗志 開學(xué)主題班會課件
- 學(xué)校教職工代表大會全套會議會務(wù)資料匯編
- 新部編版小學(xué)六年級下冊語文第二單元測試卷及答案
- 2025年山東傳媒職業(yè)學(xué)院高職單招高職單招英語2016-2024歷年頻考點(diǎn)試題含答案解析
- 《中醫(yī)基礎(chǔ)理論》課件-中醫(yī)學(xué)理論體系的基本特點(diǎn)-整體觀念
- GB/T 45107-2024表土剝離及其再利用技術(shù)要求
- 一年級家長會課件2024-2025學(xué)年
- 2024年海南省海口市小升初數(shù)學(xué)試卷(含答案)
- 廣東省五年一貫制語文試卷
- 新版北師大版小學(xué)3三年級數(shù)學(xué)下冊全冊教案完整(新教材)
- 《綜采工作面綜合防塵技術(shù)規(guī)范》
評論
0/150
提交評論