StringBuilder是一个可变的字符串类,我们可以把它看成一个容器,这里的可变指的StringBuilder对象中的内容是可变的。
使用StringBuilder可以将许多小的字符串装入该容器中,一个StringBuilder对象就是一个装很多字符串的容器
StringBuilder builder = new StringBuilder();
//每次需要添加字符串时,就调用append方法
builder.append("hhh");
//也可以添加字符
builder.append(character);
//在需要构建字符串时,调用toString()方法 就可以得到一个String类的对象
String s = builder.toString();
StringBuilder();//构造一个空的字符串构建器 int length();//返回容器中字符的数量 StringBuilder append(String string);//追加一个String 并且返回this StringBuilder append(char c);//追加一个代码单元 并且返回this String toString();
package javabase;
public class Demon1 {
public static void main(String[] args)
{
//创建一个空白的字符串对象 不含有任何内容
StringBuilder sb = new StringBuilder();
System.out.println("sb" + sb);
System.out.println("sb.length:" + sb.length());
// append方法添加对象并且返回对象本身
StringBuilder sb2 = sb.append("hello");
System.out.println("sb:" + sb);
System.out.println("sb2:" + sb2);
System.out.println(sb == sb2);//同一个对象
sb.append(100);
sb.append("飞飞");
System.out.println(sb);
//链式编程
//由于append返回对象本身 所以可以继续调用方法append
sb.append("hello").append(100).append("java");
System.out.println(sb);
sb.reverse();
System.out.println(sb);
}
}
StringBuilder转换String
public String toString();
public StingBuilder(String s);
//StringBuilder转化成String String s = sb.toString(); System.out.println(s); //String转换成StringBuilder StringBuilder ss = new StringBuilder(s); System.out.println(ss);案例拼接字符串
package javabase;
public class Demon2 {
public static void main(String[] args)
{
int[] arr = {1,2,3};
String s = arrayToString(arr);
System.out.println(s);
}
public static String arrayToString(int[] arr)
{
StringBuilder sb = new StringBuilder();
sb.append("[");
for(int i =0 ; i < arr.length; i++)
{
if(i == arr.length - 1)
{
//如果是最后一个元素
sb.append(arr[i]);
}
else
{
sb.append(arr[i]).append(", ");
}
}
sb.append("]");
String s = sb.toString();
return s;
}
}
反转字符串
package javabase;
import java.util.Scanner;
public class Demon3 {
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String s = sc.nextLine();
String sx = myReverse(s);
System.out.println(sx);
}
public static String myReverse(String s)
{
//三步走
//首先由于String 类型是不能直接反转的 所以要先转换成StringBuilder类型
//将StringBuilder对象进行Reverse
//之后调用toString() 转换成字符串 return
StringBuilder sb = new StringBuilder(s);
sb.reverse();
String ss = sb.toString();
return ss;
}
}



