Java String, StringBuffer, StringBuilder
StringBuffer (StringBuffer 使用方法跟StringBuilder差不多,下面): http://www.360doc.com/content/06/1214/11/15458_293495.shtml
StringBuffer : 使用方法: http://www.cnblogs.com/gmh/archive/2008/05/13/1195670.html
例:
char ar[] = new char[5];
str.append("abcdefgh");
str.getChars(0, 3, ar, 1);
for (int i = 0; i < 4; i++)
System.out.println(ar[i]);
结果:
a
b
c
StringBuffer类常用方法简介
StringBuffer类用于处理可变的字符串,它提供修改字符串的方法。
(1)构造方法:
a. StringBuffer s0=new StringBuffer();分配了长16字节的字符缓冲区
b. StringBuffer s1=new StringBuffer(512);分配了512字节的字符缓冲区
c. StringBuffer s2=new StringBuffer("You are good!");
在字符缓冲区中存放字符串"Happy new year!",另外,后面再留了16字节的空缓冲区。
(2) 常用方法:
a.字符设置和替换
setCharAt(int index,char ch),将指定的字符ch放到index指出的位置。
charAt(int index) 获得指定位置的字符
例如:
s="stedent";
s.setCharAt(2,"u"),则s为"student"
b.字符的插入
insert(int offset,char ch),在offset位置插入字符ch。
例如:
StringBuffer s=new StringBuffer("wecome");
s.insert(2,'l'),则s为"welcome"
c.在字符串末尾添加内容(Append方法)
StringBuffer s=newStringBuffer("we");
char d={"l","c","o","m","e"};
s.append(d);则s为"welcome"。
d.转换为不变字符串:toString()。
e.获取字符串的长度: length()
StringBuffer s = new StringBuffer("www");
int i=s.length();
f.获取字符串的容量
s.capacity();
g.重新设置字符串容量的大小:ensureCapacity()
s.ensureCapacity(100);
h.设置字符串缓冲区的大小
s.setlength(10);
如果用小于当前字符串长度的值调用setlength()方法,则新长度后面的字符将丢失。
i.将字符串的子字符串复制给数组
getChars(int start,int end,char chars[],int charsStart)
String s1 = "This is a test";
int start =0;
int end = 10;
char ch1[] = new char[end-start];
s1.getChars(start,end,ch1,0);
System.out.println(ch1);
j.字符串反转
s.reverse();
k.删除指定字符串着中的字符
delete(int start,int end)
s.delete(0,s.length()); //删除字符串s的全部字符
deleteCharAt(int index)
s.deleteCharAt(4); //删除字符串s索引为4的字符
l.替换字符串
replace(int start,int end,String str)
s.replace(0,1,"qqq");
m.返回字符串的一部分值
substring(int start) //返回从start下标开始以后的字符串
substring(int start,int end) //返回从start到 end-1字符串
StringBuffer 效率要比 String 高 : http://wzdoxu.iteye.com/blog/262022
StringBuilder : http://blog.csdn.net/sunboy_2050/article/details/7669843
StringBuilder 的清空方法:
1.StringBuilder sb2 = new StringBuilder();
2.sb.delete( 0, sb.length() );
3.sb3.setLength( 0 );
http://blog.csdn.net/blueling51/article/details/6928900
String StringBuilder 之间互相转化:
StringBuilder -- > String : stringBuilder.tostring()
String -- > StringBuilder : myString=myStringBuilder.ToString();
myStringBuilder.Append(myString);