JAVA StringBuffer类与StringTokenizer类代码解析
StringBuffer类提供了一个字符串的可变序列,类似于String类,但它对存储的字符序列可以任意修改,使用起来比String类灵活得多。它常用的构造函数为:
StringBuffer()
构造一个空StringBuffer对象,初始容量为16个字符。
StringBuffer(Stringstr)
构造一个StringBuffer对象,初始内容为字符串str的拷贝。
对于StringBuffer类,除了String类中常用的像长度、字符串截取、字符串检索的方法可以使用之外,还有两个较为方便的方法系列,即append方法系列和insert方法系列。
(1)append方法系列根据参数的数据类型在StringBuffer对象的末尾直接进行数据添加。
publicStringBufferappend(booleanb) publicStringBufferappend(charc) publicStringBufferappend(char[]str) publicStringBufferappend(char[]str,intoffset,intlen) publicStringBufferappend(doubled) publicStringBufferappend(floatf) publicStringBufferappend(inti) publicStringBufferappend(longl) publicStringBufferappend(Objectobj) publicStringBufferappend(Stringstr) publicStringBufferappend(StringBuffersb)
(2)insert方法系列根据参数的数据类型在StringBuffer的offset位置进行数据插入。
publicStringBufferinsert(intoffset,booleanb) publicStringBufferinsert(intoffset,charc) publicStringBufferinsert(intoffset,char[]str) publicStringBufferinsert(intindex,char[]str,intoffset,intlen) publicStringBufferinsert(intoffset,doubled) publicStringBufferinsert(intoffset,floatf) publicStringBufferinsert(intoffset,inti) publicStringBufferinsert(intoffset,longl) publicStringBufferinsert(intoffset,Objectobj) publicStringBufferinsert(intoffset,Stringstr)
(3)下面这个方法用于将stringbuffer对象的数据转换成字符串:
publicStringtoString()
【例3.12】基于例3.11进行修改,使用StringBuffer对象得到如图3.10所示的输出界面。
//程序文件名为TestString.java publicclassTestString { publicstaticvoidmain(String[]args) { StringBufferstr=newStringBuffer("ThesubstringbeginsatthespecifiedbeginIndex."); StringBufferstr1=newStringBuffer("string"); Stringstr2=newString(); intsize=str.length(); intflag=str.indexOf("substring"); str2=str.substring(flag,flag+9); StringBufferstrOut=newStringBuffer("字符串"); strOut.append(str); strOut.append("总长度为:"); strOut.append(size); intf=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()
返回下一个识别的记号。
importjava.util.*; publicclassUseToken { publicstaticvoidmain(String[]args) { Stringstr="数学::英语::语文::化学"; StringTokenizerst=newStringTokenizer(str,"::"); System.out.println(str+"\n课程数为:"+st.countTokens()); while(st.hasMoreTokens()) { System.out.println(st.nextToken("::")); } str="Hellothisisatest"; st=newStringTokenizer(str); System.out.println(str+"\n单词数为:"+st.countTokens()); while(st.hasMoreTokens()) { System.out.println(st.nextToken()); } } }
总结
以上就是本文关于JAVAStringBuffer类与StringTokenizer类代码解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!