字符串常用的提取方法
StringBuffer类和StringBuilder类
一、使用StringBuffer类处理字符串
除了使用String类存储字符串之外,还可以使用StringBuffer类来存储字符串。而且它是比String类更高效率的存储字符串的一种引用数据类型。特别是对字符串进行连续操作时,使用StringBuffer类可以大大提高程序的执行效率。
1.如何使用StringBuffer类
StringBuffer类位于java.util包中,是String类的增强类。
声明StringBuffer并初始化如下:
StringBuffer sb1=new StringBuffer("青春无悔");
2.常用的StringBuffer类方法
(1)toString()方法
String s1=sb1.toString(); //转化为String类
(2)append方法
追加字符串: 字符串.append(参数) 将参数连接到字符串后并返回
该方法和String类的concat()方法一样,都是把一个字符串追加到另一个字符串后面,所不同的是String类只能将String类型的字符追加到一个字符串后面,而StringBuffer类可以将任何类型的值追加到字符串后。
关键代码案例:
public class SbAppend {
public static void main(String[] args) {
StringBuffer sb=new StringBuffer("青春无悔");
int num=110;
//在字符串后面追加字符串
StringBuffer sb1=sb.append("我心永恒");
System.out.println(sb1);
//在字符串后面追加字符
StringBuffer sb2=sb1.append('啊');
System.out.println(sb2);
//在字符串后面追加整型数字
StringBuffer sb3=sb2.append(num);
System.out.println(sb3);
}
}
运行结果:
(3)insert()方法
插入字符串: 字符串.insert(位置,参数); 将字符串插入到字符串指定位置后并返回,参数值可以是包括String的任何类型。
案例:编写一个方法,实现将一个数字字符串转换成以逗号分隔的字符串,即从右边开始每三个数字用逗号隔开。
关键代码:
import java.util.Scanner;
public class Demo3 {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
//接收字符串,存放在StringBuffer类型的对象中
System.out.println("请输入一串数字:");
String num=input.next();
StringBuffer str=new StringBuffer(num);
//从后往前每隔三位添加逗号
for(int i=str.length()-3;i>0;i-=3) {
str.insert(i, ",");
}
System.out.print(str);
}
}
运行结果如下:
二、使用StringBuilder类处理字符串
用法和StringBuffer类基本一样,它是JDK5.0版本新增的类,是一个可变的字符序列。