文章目录
一、基本含义
作用:同String类比较,有多次修改字符串对象和不产生新的未使用对象的优势。同StringBuilder类比较,有线程安全(即同步访问)的优势,但不具有速度优势。因此,在应用程序无安全要求下,一般使用StringBuilder。
二、增删改排序
2.1 增加——append()
语法:字符串.append(“newString”);
public class StringBufferDemon{
public static void main(String[] args){
// 创建StringBuffer实例对象。
StringBuffer sb = new StringBuffer();
sb.append("1");
sb.append("2");
sb.append("3");
System.out.println(sb); // 结果:123
}
}
2.2 删除——delete()
语法:字符串.delete(startIndex,endIndex);
public class StringBufferDemon{
public static void main(String[] args){
// 创建StringBuffer实例对象。
StringBuffer sb = new StringBuffer("12345");
sb.delete(1,2);
System.out.println(sb); // 结果:1345
}
}
2.3 修改——replace()
语法:字符串.replace(startIndex,endIndex,insertString);
public class StringBufferDemon{
public static void main(String[] args){
// 创建StringBuffer实例对象。
StringBuffer sb = new StringBuffer("12345");
sb.replace(1,2,a);
System.out.println(sb); // 结果:1a345
}
}
2.3 替换——replace()
语法:字符串.replace(startIndex,endIndex,replaceString);
public class StringBufferDemon{
public static void main(String[] args){
// 创建StringBuffer实例对象。
StringBuffer sb = new StringBuffer("12345");
sb.replace(1,2,a);
System.out.println(sb); // 结果:1a345
}
}
2.4 插入——insert()
语法:字符串.insert(offIndex,insertString);
public class StringBufferDemon{
public static void main(String[] args){
// 创建StringBuffer实例对象。
StringBuffer sb = new StringBuffer("12345");
sb.insert(2,a);
System.out.println(sb); // 结果:12a345
}
}
2.5 反转——reverse()
语法:字符串.reverse();
public class StringBufferDemon{
public static void main(String[] args){
// 创建StringBuffer实例对象。
StringBuffer sb = new StringBuffer("12345");
sb.reverse();
System.out.println(sb); // 结果:54321。
}
}
三、查找
3.1 获取单字符——charAt()
语法:字符名.charAt(index);
public class StringBufferDemon{
public static void main(String[] args){
// 创建StringBuffer实例对象。
StringBuffer sb = new StringBuffer("12345");
System.out.println(sb.charAt(2)); // 结果:3。
}
}
3.2 获取多字符—— substring()
语法一:字符名.substring(startIndex);
语法二:字符名.substring(startIndex,endIndex);
public class StringBufferDemon{
public static void main(String[] args){
// 创建StringBuffer实例对象。
StringBuffer sb = new StringBuffer("123245");
System.out.println(sb.substring(2)); // 结果:3245。
System.out.println(sb.substring(2,4)); // 结果:32。
}
}
3.3 获取索引—— indexOf()
语法一:字符名. indexOf(string);
语法二:字符名. indexOf(string, startindex);
语法三:字符名.lastIndexOf(string);
语法四:字符名. lastIndexOf(string, startindex);
public class StringBufferDemon{
public static void main(String[] args){
// 创建StringBuffer实例对象。
StringBuffer sb = new StringBuffer("123245");
System.out.println(sb.indexOf("2")); // 结果:1。
System.out.println(sb.indexOf("2",2)); // 结果:3。
System.out.println(sb.lastIndexOf("2")); // 结果:3。
System.out.println(sb.lastIndexOf("2",2)); // 结果:1。
}
}
四、转换
4.1 转换成String型
语法一:字符名.toString();
public class StringBufferDemon{
public static void main(String[] args){
// 创建StringBuffer实例对象。
StringBuffer sb = new StringBuffer("123245");
System.out.println(sb.toString()); // 结果:123245。
}
}