0
点赞
收藏
分享

微信扫一扫

StringBuffer功能

/**

* StringBuffer是字符串缓冲区,是一个容器

* 1.而且长度是可变化的,(数组长度是固定的)

* 2.可以直接操作多个数据类型(而数组只能操作一种数据类型)

* 3.最终会通过toString变成字符串

* @author dada56

*StringBuilder是线程不同步的,线程不安全,单线程时用StringBuilder,效率

*高,不需检验锁

*而StringBuffer线程安全,多线程用,但效率没StringBuilder快

*

*/

public class StringBufferDemo {

public static void main(String[] args) {

//1.存储

StringBuffer sb=new StringBuffer();

StringBuffer sb1= sb.append(89);

//方法调用链,返回的是同一对象

sb.append("abc").append(true).append(34);

sb.insert(1, "qq");

System.out.println(sb.toString());

//2.删除

StringBuffer sbm=new StringBuffer("asdf");

sbm.delete(1, 3);

sbm.delete(0, sbm.length());


StringBuffer sbg=new StringBuffer("hjhjhsdf");

sbg.deleteCharAt(2);

//3.修改

System.out.println(sbg.toString());

sbg.replace(1, 4, "java");//含头不含尾

sbg.setCharAt(2, 'k');

//4.反转

sbg.reverse();

//5.将缓冲区指定数据存储到数组中

StringBuffer ss=new StringBuffer("sdsdrerefgfg");

char[] chr=new char[4];

ss.getChars(1, 4, chr, 1);//从1切到4(不含),放到chr数组中,并从1开始放

for(int x=0;x<chr.length;x++){

System.out.println(chr[x]);

}

System.out.println(sbg.toString());

}

}

举报

相关推荐

0 条评论