

常用方法:
StringBulider性能好的原因:(s3指向的是004 ,前面的对象都会被回收)
普通字符串拼接: 每+一次产生一个对象
使用StringBulider方法:只会产生一个对象,在一个对象里面拼接
代码块实例:
package com.itheima.d11_api_stringbulider;/*** 目标:学会使用StringBulider操作字符串,最终还需要知道它性能好的原因*/public class StringBuilderDemo1 {public static void main(String[] args) {StringBuilder sb = new StringBuilder(); // 默认是 ""sb.append("a"); // 字符串拼接sb.append("b");sb.append("c");System.out.println(sb); // 输出 abcStringBuilder sb1 = new StringBuilder();// 支持链式编程sb1.append("1").append("2").append("3");// 源码中有return this; 所以每次添加完对象会返回给该对象继续拼接System.out.println(sb1);// 反转 reverse方法sb1.reverse().append("110"); // sb1 = 123; 反转后321 然后返回给对象继续添加110 结果喂321110System.out.println(sb1);System.out.println(sb1.length()); // 输出字符串的长度// 注意:StringBuilder只是拼接字符串的手段,效率好// 最终目的还是要恢复成String类型StringBuilder sb2 = new StringBuilder();sb2.append("123").append("456");// check(sb2); // 直接传入实参会报错,说明sb2不是String类型// 恢复成String类型String rs = sb2.toString(); // 已经默认重写了toString返回的就是字符串内容check(rs); // 这样就能传入字符串实参了}public static void check(String data){System.out.println(data);}}
