package com.zking.test;
/**
* 今日新课内容
* 1.StringBuffer和StringBuilder
* (1)类,而且与String一样,都是可以用来定义字符串的。
* (2)区别:String定义的字符串是固定的,而这2个类是可变字符串
* (3)StringBuffer和StringBuilder定义时只能通过构造函数定义不能直接定义
* (4)StringBuffer和StringBuilder的区别
* StringBuffer:线程安全
* StringBuilder:线程不安全
*
* (5)三者之间都会存在共有的方法
*
*/
public class StringBufferAndStringBuilderDemo {
public static void main(String[] args) {
// StringBuffer sb = "sb"; 不能直接定义
// StringBuffer sb = new StringBuffer("我是谁");
// System.out.println(sb);
// StringBuffer sb = new StringBuffer("我是谁");
// //sb的类型:StringBuffer类型
// //需求:StringBuffer类型---》String类型
// String str = sb.toString();//永远不要记等于符号左边的代码 ctrl+1
// System.out.println(str);
// //需求:String类型--->StringBuffer类型
// String name = "dengyankang";
// //通过构造函数直接可以转换
// StringBuffer sb2 = new StringBuffer(name);
//与String不一样的方法有以下几个
// append 末尾追加内容
StringBuffer sb = new StringBuffer("dengyankang");
sb.append("liuxiangyang");
System.out.println(sb);
// insert 在指定的索引位置处添加指定的内容
sb.insert(2, "王家庆");
System.out.println(sb);
// delete删除
sb.delete(2, 5);
System.out.println(sb);
// 替换 区间替换
sb.replace(0, 4, "tang");
System.out.println(sb);
// 反转 倒过来输出
sb.reverse();
System.out.println(sb);
StringBuilder sb2 = new StringBuilder();
}
}