使用场景:在字符串缓冲区被单个线程使用,大多数实现中,它比 StringBuffer
要快。
方法:主要操作是 append
和 insert
方法。
线程安全:StringBuilder
的实例用于多个线程是不安全的。如果需要这样的同步,则建议使用 StringBuffer
。
public static void main(String[] args) { //简单使用append/insert方法 StringBuilder sb = new StringBuilder(); sb.append("张"); sb.append("小李"); System.out.println(sb.toString()); //参数1在第几个字符插入参数2插入内容 sb.insert(0,"我叫"); System.out.println(sb.toString()); //append方法返回值是本身也就是StringBuilder String name = "Smith"; String fname = "Mike"; StringBuilder stringBuilder = new StringBuilder(); //还可以这样写返回值就是StringBuilder StringBuilder append = stringBuilder.append(fname).append("-").append(name); System.out.println(append.toString()); //String编辑工具:StringJoiner //构造函数是要带值的:指定分割符 StringJoiner joiner = new StringJoiner(","); //建一个数组 int [] arr = new int[]{12,13,14,15}; for (int i : arr) { joiner.add(Integer.toString(i)); } System.out.println("joiner:"+joiner); //指定分隔符和开头结尾的符号 StringJoiner stringJoiner = new StringJoiner(",","[","]"); for (int i : arr) { stringJoiner.add(Integer.toString(i)); } System.out.println("stringJoiner:"+stringJoiner); }