Java StringBuffer StringBuilder
package com.qf.demo01; class Container{ String str = ""; public Container add(String s){ str += s; return this;//将当前的对象,作为返回值。 } } public class Test1StringBuffer { public static void main(String[] args) { /* * 存储一个字符串,可以使用String,也可以使用StringBuffer,以及StringBuiler。 * String:字符串内容不能更改。 * StringBuffer:字符串的内容可以修改。 */ //step1:创建StringBuffer对象。容量可以自动扩容 StringBuffer sb = new StringBuffer();//,StringBuffer对象创建出来了,但是里面还没有内容 System.out.println(sb.toString()); // StringBuffer sb2 = new StringBuffer(20);//StringBuffer创建了,容量存储20个字符。 StringBuffer sb3 = new StringBuffer("abc"); System.out.println(sb3.toString()); // Container c = new Container(); // c.add("haha").add("hehe").add("abc");//方法链 //step2:有哪些方法可以使用 /* * append(data)-->StringBuffer对象本身,在屁股后面追加。。 */ System.out.println("sb-->"+sb); sb.append("abc"); System.out.println(sb); sb.append(true); System.out.println(sb); sb.append(100).append(3.14).append(new Object()); System.out.println(sb);//"abctrue1003.14java.lang.Object@15db9742" sb.append(sb); System.out.println(sb); /* * insert(index, data),在指定的位置,进行插入数据 */ sb.insert(1, "XXX"); System.out.println(sb); sb.insert(0, "***"); System.out.println(sb); System.out.println(sb.length());//sb中存储的字符串的长度是84个 sb.insert(84, "666"); System.out.println(sb); /* * delete(start,end)-->StringBuffer * 删除从start开始,到end结束,之间的这些字符 * [start,end) * * StringBuffer deleteCharAt(int index) */ sb.delete(1, 3); System.out.println(sb); sb.delete(0, 4); System.out.println(sb); sb.deleteCharAt(11);//删除指定的字符 System.out.println(sb); /* * reverse()-->StringBuffer,翻转 */ sb.reverse(); System.out.println(sb); /* * setCharAt(index,char)-->void,使用第二个参数表示的字符,替换掉指定下标的字符 */ sb.setCharAt(2, '9'); System.out.println(sb); /* * setLength()-->void,设置一个StringBuffer的字符串内容的长度 */ System.out.println(sb); System.out.println(sb.length()); sb.setLength(10); System.out.println(sb); sb.setLength(20); System.out.println(sb); System.out.println(sb.length()); sb.append("haha"); System.out.println(sb); /* * replace(start,end, str)-->StringBuffer,替换指定区间的内容,[statt,end),用str来替换 */ sb.replace(10, 20, "XXX"); System.out.println(sb); StringBuilder sb2 = new StringBuilder(); sb2.append(true); } }