String与StringBuffer

来源:互联网 发布:淘宝可以延迟几天收货 编辑:程序博客网 时间:2024/06/12 01:43
//StringBuffer内容替换的两种方式 ,
StringBuffer sbf = new StringBuffer("您好!我的名字是{name},我是一只{type}。我的主人是{master}。");
sbf.replace(sbf.indexOf("{name}"),sbf.indexOf("{name}")+"{name}".length(),"欧欧");
sbf.replace(sbf.indexOf("{type}"),sbf.indexOf("{type}")+"{type}".length(),"狗狗");
sbf.replace(sbf.indexOf("{master}"),sbf.indexOf("{master}")+"{master}".length(),"李伟");
System.out.println("StringBuffer的替换"+ sbf.toString());


StringBuffer sbf1 = new StringBuffer("您好!我的名字是{name},我是一只{type}。我的主人是{master}。");
String n = sbf1.toString().replace("{name}","欧欧").replace("{type}","狗狗").replace("{master}","李伟");
// n =  n.replace("{type}","狗狗");  //String 更改内容的方法,不会更改本身
// n= n.replace("{master}","李伟");
System.out.println("String的替换"+ n);
//更改StringBuffer的内容,会影响StringBuffer本身的内容
//sbf.replace() sbf.substring()  sbf.append()  sbf.delete()  sbf.insert()


//StringBuffer的追加, StringBuffer和String 使用场景。 经常对字符串做更改、追加、删除、替换使用StringBuffer
//如果只是存取或者简单的截取拆分字符串用String就可以
StringBuffer ss = new StringBuffer();
ss.append(true); //就是把我们传的参数 放到 String.valueOf中了
ss.append(1);
ss.append(new char[]{'1','2'});
System.out.println(ss.toString());


//String的追加怎么做
String ss1 = "";//String任何更改内容的方法,都不会更改本身
ss1= ss1.concat(String.valueOf(true));// concat帮 ss1这段内存,的另一段内存做个连接
ss1 +=1;
   ss1=ss1+ String.valueOf(new char[]{'1','2'});
System.out.println("ss1的内容是:"+ ss1);


//删除的区别
StringBuffer ssd = new StringBuffer("123");
ssd.deleteCharAt(ssd.length()-1);//删最后一个字符
ssd.delete(ssd.length()-1,ssd.length());//删最后一个字符
System.out.println("ssd删除最后一个字符:"+ssd.toString());


String ssd1 = "123";
ssd1= ssd1.substring(0, ssd1.length()-1);  //字符串的删除,只能截取
System.out.println("ssd1删除最后一个字符:"+ssd1);


//插入字符串区别
StringBuffer ssi = new StringBuffer("123");
ssi.insert(0,true);
System.out.println("ssi插入true后:"+ssi.toString());


String ssis = "123";
//ssis= String.valueOf(true)+ssis;
//字符串中间插入数据, 把字符串拆成两半。中间加数据,再合并
String left = ssis.substring(0,ssis.indexOf('2')+1);
String right = ssis.substring(ssis.indexOf('2')+1);
ssis = left+String.valueOf(true)+right;
System.out.println("ssis插入true后:"+ssis);


//只有String才有split方法
//new StringBuffer().toString().split();
原创粉丝点击