当前位置: 代码迷 >> 综合 >> API基础(StringBuilder)
  详细解决方案

API基础(StringBuilder)

热度:31   发布时间:2023-11-27 09:48:41.0

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));}
}

结果:
在这里插入图片描述

  相关解决方案