package StringDemo;
public class StringBuilderDemo1 {
public static void main(String[] args){
StringBuilder sb=new StringBuilder();//无参构造方法
System.out.println(sb.length());//0
sb.append("hello");
sb.append(2019);
sb.append('A');
System.out.println(sb);//hello2019A
System.out.println(sb.length());//10
//public StringBuilder append(任意类型):添加数据,并返回对象本身
//链式编程
sb.append("hello").append(2019).append('A');
System.out.println(sb);
//hello2019Ahello2019A
//public StringBuilder reverse();返回相反的字符序列
sb.reverse();
System.out.println("sb反转后:"+sb);
//sb反转后:A9102ollehA9102olleh
//StringBuilder的有参构造方法
StringBuilder sb1=new StringBuilder("hello java");
System.out.println(sb1.length());//10
System.out.println(sb1);//hello java
//Stringbuilder转换为String
//public String toString():通过toString()就可以实现把StringBuilder转换为String
String s=sb.toString();
System.out.println(s);//A9102ollehA9102olleh
//String转换为StringBuilder
//public StringBuilder(String s),通过构造方法就可以实现把String转换为StringBuilder
String ss="xiaozhan";
StringBuilder sb2=new StringBuilder(ss);
System.out.println(sb2);//xiaozhan
//字符串的拼接
//需求:
//定义一个方法,把int数组中数据按照指定的格式拼接成一个字符串返回,调用该方法,并在控制台输出结果,例如数组int[] arr=[1,2,3],执行方法后的输出结果为:[1,2,3]
//
//思路:
//1)定义一个int类型的数组,用静态初始化完成数组元素的初始化。
//2)定义一个方法:用于把int数组中的数据按照指定格式拼接成一个字符串返回。返回值为Stringe类型,参数列表int[] arr.
//3)在方法中用StringBuilder按照要求进行拼接,并把结果转换成String返回。
//4)调用方法,用一个变量接收结果。
//5)输出结果。
int[] arr={1,2,3};
//调用方法,用一个变量接收结果
String temp=arrayToString(arr);
//输出结果
System.out.println("拼接后数组为:"+temp);
//拼接后数组为:{1, 2, 3}
//字符串的反转
//需求:定义一个方法,实现字符串的反转,键盘录入一个字符串,调用该方法后,在控制台输出结果,例如,键盘录入abc,输出结果cba。
//
//思路:
//1)键盘录入一个字符串,用Scanner实现;
//2)定义一个方法,实现字符串的反转,返回类型为String,参数为String s;
//3)在方法中利用StringBuilder实现反转,把结果转换为String返回。
//4)调用该方法,用一个变量接收。
//5)输出结果。
String line="I am great!";
String temp2=myReverse(line);
System.out.println("反转后:"+temp2);
//反转后:!taerg ma I
}
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;
}
public static String myReverse(String s){
//String====>StringBuilder------>reverse()----->String
StringBuilder sb=new StringBuilder(s);
sb.reverse();
String ss=sb.toString();
return ss;
}
}
结果:
0
hello2019A
10
hello2019Ahello2019A
sb反转后:A9102ollehA9102olleh
10
hello java
A9102ollehA9102olleh
xiaozhan
拼接后数组为:{1, 2, 3}
反转后:!taerg ma I

本文深入探讨 Java 中 StringBuilder 类的使用,包括构造方法、链式编程、字符串拼接及反转等核心操作。通过具体实例,展示如何高效利用 StringBuilder 提升字符串处理性能。
471

被折叠的 条评论
为什么被折叠?



