package src.com.zhang.StringTest;
import org.junit.Test;
public class StringBufferBuilder {
/**
* String StringBuffer StringBuilder三者的异同
* String:不可变的字符序列 底层使用char[]数组存储
* StringBuffer:可变的字符序列 线程安全(效率低)底层使用char[]数组存储
* Stringbuilder:可变的字符序列 线程不安全(效率高)底层使用char[]数组存储
* 效率大小:StringBuilder>StringBuffer>String
*/
@Test
public void test(){
/**
* StringBuffer(StringBuild)常用方法
* 1.增:append()
* 2.删:delete()
* 3.改:setCharAt(char a) replace(String s)
* 4.查:charAt(int) indexOf("")
* 5.长度:length
* 6.遍历:for()+charAt()
* 7.插入:insert()
*/
StringBuffer stringBuffer=new StringBuffer("sdf");
stringBuffer.setCharAt(0,'d');
System.out.println(stringBuffer);
stringBuffer.append("456");
StringBuffer str=new StringBuffer(100);
str.append(1);
str.append("ee");
str.delete(1,2);
System.out.println(str);
str.replace(1,2,"jjj");
System.out.println(str);
str.insert(2,false);
System.out.println(str);
System.out.println(str.reverse());
System.out.println(str.length());
System.out.println(str.indexOf("e"));
String substring = str.substring(8);//留下的是索引之后的,包括索引处的字符也留下
System.out.println(substring);
StringBuffer s1=new StringBuffer("aaa");
s1.replace(0,1,"bbb");
int a = s1.indexOf("a");
System.out.println("a位置:"+a);
System.out.println(s1);
}
}
StringBuffer方法和StringBuilder方法的使用以及和String三者之间的异同
最新推荐文章于 2024-09-14 18:46:05 发布