一、StringBuilder的概述及其构造方法
概述:(java.lang)
Stringbulider:是一个可变可变字符串。字符串缓冲区类
String与StringBuilder的区别:
String的内容是固定的
StringBuilder的内容是可变的
其构造方法:
StringBuilder()
成员方法:
public int capacity():返回当前容量
public int length():返回长度
容量:理论值
长度:实际值
代码块
public class StringBuilderDemo{
public static void main(String[] args){
//创建对象
StringBuilder sb = new StringBuilder();
System.out.println("sb:"+sb);
System.out.println("sb.capacity()"+sb.capacity());
System.out.println("sb.length()"+sb.length());
}
}
输出结果:
sb:
sb,capacity():16
sb.length():0
二、StringBulider的添加功能和反转功能
添加功能:
public StringBulider append(任意类型):添加数据,并返回自身
反转功能
public StringBulider reverse()
代码块
public class StringBuilderDemo{
public static void main(String[] args){
//创建对象
StringBuilder sb= new StringBuilder();
/*方法一
//public StringBulider append(任意类型)
StringBuilder sb2 = sb.append("hello");
System.out.println("sb:"+sb);//sb:hello
System.out.println("sb2:"+sb2);sb2:ello
System.out.println(sb==sb);//true
*/
/*方法二
sb.append("hello");
sb.append("world");
*/
//sb:helloworld
//链式编程
sb.append("hello").append("world");
System.out.println("sb:"+sb);
//public StringBulider reverse()
sb.reverse()
System.out.println(“sb:"+sb);//dlrowolleh
}
}
十四、StringBuilder和String的相互转换
SrtingBuilder----String
public String toString():通过toString()就可以实现把StringBuilder转化为String
String-------StringBuilder
StringBuilder(String str):通过构造方法实现把Sring转换为StringBuilder
代码块
public class StringBuilderTest{
public static void main(String[] args){
/*
//SrtingBuilder----String
StringBuilder sb = new StringBuilder();
sb.append("hello").append("world");
String s = sb.toString();
System.out.println(s);//输出:helloworld
*/
//String-------StringBuilder
String s = "helloworld";
StringBuilder sb = new StringBuilder(s);
System.out.println(sb);
}
}
三、StringBuilder练习—字符串反转
分析:
1、键盘录入一个字符串
2、写方法实现反转
String----StringBuilder----reverse()---String
代码块
public class StringBuilderTest3{
public static void main(String[] args){
//键盘录入一个字符串
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串");
String s = sc.nextLine();
//方法实现反转
//调用方法
String result = myReverse(s);
//输出结果
System.out.prinln("result:"+result);
}
/*
两个明确:
返回值类型:String
参数列表:String
*/
public static String myReverse(Stirng s){
//String----StringBuilder----reverse()---String
StringBuilder sb = new StringBuilder(s);
sb.reverse();
String result = sb.toString();
return result;
}
}
四、StringBuilder练习----判断对称字符串
分析:
1、键盘录入一个字符串
2、方法实现判断一个字符串是否是对称字符串
把字符换反转,和反转前的字符串进行比较,若内容相同,则索敏是对称字符串
3、调用方法
4、输出结果
代码块
public class StringBuilderTest4{
public static void main(String[] args){
//键盘录入一个字符串
Scanner sc = new Scanner();
System.out.println("请输入一个字符串");
Sring s = sc.nextLine();
//调用方法
boolean b = isSymmetry(s);
//输出结果
System.out.println("b:"+b);
}
/*
两个明确:
返回值类型:boolean
参数列表:String s
*/
public static boolean isSymmetry(String s){
//把字符换反转,和反转前的字符串进行比较,若内容相同,则索敏是对称字符串
StringBuilder sb = new StringBuilder(s);
sb.reverse();
String result = sb.toString();
return result.equals(s);
}
}