API基础
- String
- StringBuilder
-
- StringBuilder概述
- StringBuilder中的方法
- 构造函数
- StringBuilder的常用方法
- StringBuilder 和String的区别
- StringBuilder和String之间的转化
- 案例
-
- 对称字符串
String
StringBuilder
StringBuilder概述
- StringBuilder是一个可变的字符串类,我们可以把它看成一个容器
- 作用:提高字符串的操作效率
StringBuilder中的方法
构造函数
- public StringBuilder():创建一个空白的可变字符串,不含任何内容
- public StringBuilder(String str):根据传入内容,来创建可变字符串对象
public class Demo2StringBuilder {
public static void main(String[] args) {
StringBuilder sb1=new StringBuilder();System.out.println(sb1);StringBuilder sb2=new StringBuilder("abc");System.out.println(sb2);}}
结果
StringBuilder的常用方法
- public StringBuilder append(任意类型):添加数据,并返回数据本身
添加操作:
StringBuilder sb1=new StringBuilder();sb1.append(123);sb1.append("abc");sb1.append(true);System.out.println(sb1);
结果
返回数据本身:
StringBuilder sb1=new StringBuilder();StringBuilder sb2=sb1.append("红色");StringBuilder sb3=sb1.append("蓝色");System.out.println(sb1==sb2);System.out.println(sb2==sb3);
结果:
由此可看出sb1,sb2,sb3是等效的地址也相同
链式编程法则:
StringBuilder sb1=new StringBuilder();StringBuilder sb2=sb1.append("红色");StringBuilder sb3=sb1.append("蓝色");StringBuilder sb4=sb1.append("绿色");System.out.println(sb1);//链式法则StringBuilder sb=new StringBuilder();sb.append("红色").append("蓝色").append("绿色");System.out.println(sb);
结果
- public StringBuilder reverse():返回反转后的字符类型
StringBuilder sb=new StringBuilder();sb.append("红色").append("蓝色").append("绿色");System.out.println("反转前:"+sb);System.out.println("反转后:"+sb.reverse());
结果
- public int length():返回长度
System.out.println("sb中的字符个数:"+sb.length());
结果
- public String toString():将StringBuilder转换为String
String s=sb.toString();System.out.println(s);
结果
StringBuilder 和String的区别
- StringBuilder:内容不可变
- String:内容可变
StringBuilder和String之间的转化
- String到StringBuilder:通过StringBuilder的构造方法将String转为StringBuilder
- StringBuilder转换为String:通过toString()转换
案例
对称字符串
注意:String之间的内容比较必须用equals而不是等等
public class Test8 {
public static void main(String[] args) {
// TODO Auto-generated method stubScanner sc=new Scanner(System.in);String s=sc.nextLine();StringBuilder sb=new StringBuilder(s);String rev=sb.reverse().toString();System.out.println(rev.equals(s));}
}
结果: