JAVA全系列 教程
3762个小节阅读:7094k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
StringBuffer
和StringBuilder
都是可变的字符序列。
· 常用方法列表:
重载的public StringBuilder append(…)方法
可以为该StringBuilder
对象添加字符序列,仍然返回自身对象。
方法public StringBuilder delete(int start,int end)
可以删除从start
开始到end-1
为止的一段字符序列,仍然返回自身对象。
方法public StringBuilder deleteCharAt(int index)
移除此序列指定位置上的 char
,仍然返回自身对象。
重载的public StringBuilder insert(…)方法
可以为该StringBuilder 对象在指定位置插入字符序列,仍然返回自身对象。
方法public StringBuilder reverse()
用于将字符序列逆序,仍然返回自身对象。
方法public String toString()
返回此序列中数据的字符串表示形式。
和 String 类含义类似的方法:
xxxxxxxxxx
public int indexOf(String str)
public int indexOf(String str,int fromIndex)
public String substring(int start)
public String substring(int start,int end)
public int length()
char charAt(int index)
【示例】StringBuffer/StringBuilder基本用法
xxxxxxxxxx
public class TestStringBufferAndBuilder{
public static void main(String[ ] args) {
/**StringBuilder*/
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 7; i++) {
sb.append((char) ('a' + i));//追加单个字符
}
System.out.println(sb.toString());//转换成String输出
sb.append(", I can sing my abc!");//追加字符串
System.out.println(sb.toString());
/**StringBuffer,下面的方法同样适用StringBuilder*/
StringBuffer sb2 = new StringBuffer("北京尚学堂");
sb2.insert(0, "爱").insert(0, "我");//插入字符串
System.out.println(sb2);
sb2.delete(0, 2);//删除子字符串
System.out.println(sb2);
sb2.deleteCharAt(0).deleteCharAt(0);//删除某个字符
System.out.println(sb2.charAt(0));//获取某个字符
System.out.println(sb2.reverse());//字符串逆序
}
}
执行结果如图所示:
StringBuffer
和StringBuilder
都是可变的字符序列。
实时效果反馈
1. 关于可变字符序列,说法错误的是:
A StringBuffer
线程安全,做线程同步检查, 效率较低。
B StringBuilder
线程不安全,不做线程同步检查,因此效率较高。
C new StringBuilder().append("aaa").append("bbb")
,是因为append()
返回自身对象
D StringBuffer
线程安全,我们开发中一般用它
答案
1=>D