StringBuffer類提供了一個字符串的可變序列,類似于String類,但它對存儲的字符序列可以任意修改,使用起來比String類靈活得多。它常用的構造函數為:
StringBuffer()
構造一個空StringBuffer對象,初始容量為16個字符。
StringBuffer(Stringstr)
構造一個StringBuffer對象,初始內容為字符串str的拷貝。
對于StringBuffer類,除了String類中常用的像長度、字符串截取、字符串檢索的方法可以使用之外,還有兩個較為方便的方法系列,即append方法系列和insert方法系列。
(1)append方法系列根據參數的數據類型在StringBuffer對象的末尾直接進行數據添加。
public StringBuffer append(boolean b)public StringBuffer append(char c)public StringBuffer append(char[] str)public StringBuffer append(char[] str, int offset, int len)public StringBuffer append(double d)public StringBuffer append(float f)public StringBuffer append(int i)public StringBuffer append(long l)public StringBuffer append(Object obj)public StringBuffer append(String str)public StringBuffer append(StringBuffer sb)
(2) insert方法系列根據參數的數據類型在StringBuffer的offset位置進行數據插入。
public StringBuffer insert(int offset, boolean b)public StringBuffer insert(int offset, char c)public StringBuffer insert(int offset, char[] str)public StringBuffer insert(int index, char[] str, int offset, int len)public StringBuffer insert(int offset, double d)public StringBuffer insert(int offset, float f)public StringBuffer insert(int offset, int i)public StringBuffer insert(int offset, long l)public StringBuffer insert(int offset, Object obj)public StringBuffer insert(int offset, String str)
(3) 下面這個方法用于將stringbuffer對象的數據轉換成字符串:
public String toString()
【例3.12】基于例3.11進行修改,使用StringBuffer對象得到如圖3.10所示的輸出界面。
//程序文件名為TestString.java public class TestString { public static void main(String[] args) { StringBuffer str = new StringBuffer("The substring begins at the specified beginIndex."); StringBuffer str1 = new StringBuffer("string"); String str2 = new String(); int size = str.length(); int flag = str.indexOf("substring"); str2 = str.substring(flag,flag + 9); StringBuffer strOut = new StringBuffer("字符串"); strOut.append(str); strOut.append("總長度為:"); strOut.append(size); int f = strOut.indexOf("總"); strOut.insert(f,'/n'); System.out.println(strOut.toString()); if(str1.toString().equals(str2)) System.out.println("截取的字符串為:" + str1.toString()); else System.out.println("截取的字符串為:" + str2); } }
StringTokenizer(Stringstr,Stringdelim)
使用delim分隔符,以初始字符串str構建StringTokenizer對象。
intcountTokens()
返回識別的總記號數。
booleanhasMoreTokens()
測試是否還有識別的記號。
booleannextToken(Stringdelim)
返回字符串delim分隔的下一個記號。
StringnextToken()
返回下一個識別的記號。
import java.util.*; public class UseToken { public static void main(String[] args) { String str = "數學::英語::語文::化學"; StringTokenizer st = new StringTokenizer(str,"::"); System.out.println(str + "/n課程數為:" +st.countTokens()); while (st.hasMoreTokens()) { System.out.println(st.nextToken("::")); } str = "Hello this is a test"; st = new StringTokenizer(str); System.out.println(str + "/n單詞數為:" +st.countTokens()); while (st.hasMoreTokens()) { System.out.println(st.nextToken()); } } }
總結
以上就是本文關于JAVA StringBuffer類與StringTokenizer類代碼解析的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續參閱本站其他相關專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
新聞熱點
疑難解答
圖片精選