StringBuffer的使用
package com.cw.string;
public class StringBufferDemo {
public static void main(String[] args) {
StringBuffer sb = new StringBuffer();
sb.append("123456");
// 16 34 70 142 286
// 102400 102401
// 204802
StringBuffer sb2 = sb.reverse().append("###");
System.out.println(sb);
System.out.println(sb2);
}
public static void replacedemo() {
// capacity() :返回的是缓冲区的长度
// length():返回的是缓冲区中的有效字符的长度
// void setCharAt(int index, char ch)将给定索引处的字符设置为 ch。
// 替换一个字符
StringBuffer sb = new StringBuffer();
sb.append("123456");
// sb.setLength(sb.length());==sb.trimToSize()
sb.replace(5, 6, "0999");
System.out.println(sb);
// System.out.println("有效字符的长度:"+sb.length());//3
// System.out.println("缓冲区的长度:"+sb.capacity());//16
}
public static void insertdemo() {
StringBuffer sb = new StringBuffer();
sb.append("abcadef");
// int index = sb.indexOf("a");
// int lastIndex = sb.lastIndexOf("a");
// System.out.println(lastIndex);
// insert(offset,str)
// offset:带插入的字符的角标
// str:待插入的字符串
sb.insert(3, "d");
System.out.println(sb);
}
public static void appenddeldemo() {
// 16 34 70
StringBuffer sb = new StringBuffer();
// append 往缓冲区中添加字符串,可以以方法链的形式进行调用
sb.append("1234567890");
// String string = sb.toString();
// 删除缓冲区中的字符,从start开始(包含start)到end结束(不包含end)
// sb.delete(4, 9);
sb.delete(3, 4);
sb.deleteCharAt(3);
int capacity = sb.capacity();
System.out.println(sb.toString());
System.out.println("当前缓冲区的容量是:" + capacity);
}
}