转自:https://blog.csdn.net/ten_sory/article/details/54846900
1. StringBuffer类及其对象的创建
String和StringBuffer类的对象都是字符串,区别在于,String类对象在创建之后无法更改字符串的内容,StringBuffer类的对象在创建以后可以更改其内容,所以,StringBuffer类对象比String类对象更加灵活.
StringBuffer类对象的常见创建方式如下
StringBuffer s = new StringBuffer("Java");
2. StringBuffer类的常用方法
2.1 s.append(str)方法
在s后面追加str,其中s的类型必须为StringBuffer类型,str的类型可以为String,StringBuffer,int,float,char,Object等类型.
例如
-
StringBuffer s = new StringBuffer( "Java");
-
System.out.println(s);
-
s.append( "Script");
-
System.out.println(s);
运行结果为
Java
JavaScript
2.2 s.charAt(index)方法
取出s中下标为index的字符.
例如
-
StringBuffer s = new StringBuffer( "Java");
-
System.out.println(s.charAt( 2));
运行结果为
v
2.3 s.setCharAt(int index, char ch)方法
将s中下标为index的字符替换为字符ch,可以替换的前提是index合理.
例如
-
StringBuffer s = new StringBuffer( "Java");
-
System.out.println(s);
-
s.setCharAt( 0, 'W');
-
System.out.println(s);
运行结果为
Java
Wava
2.4 s.insert(int index,String str)方法
在s下标为index处插入字符串str.
例如
-
StringBuffer s = new StringBuffer( "Java");
-
System.out.println(s);
-
s.insert( 4, "Script");
-
System.out.println(s);
运行结果为
Java
JavaScript
2.5 s.reverse()方法
将s反转.
例如
-
StringBuffer s = new StringBuffer( "ABCDEFG");
-
System.out.println(s);
-
s.reverse();
-
System.out.println(s);
ABCDEFG
GFEDCBA
2.6 s.delete(int startIndex,int endIndex)方法
删除s中下标从startIndex到endIndex-1的字符.
例如
-
StringBuffer s = new StringBuffer( "I dislike Java");
-
System.out.println(s);
-
s.delete( 2, 5);
-
System.out.println(s);
I dislike Java
I like Java
2.7 s.deleteCharAt(int index)方法
删除s中下标为index的字符.
例如
-
StringBuffer s = new StringBuffer( "ABCCDEF");
-
System.out.println(s);
-
s.deleteCharAt( 2);
-
System.out.println(s);
ABCCDEF
ABCDEF
2.8 s.replace(int startIndex,intendIndex,String str)方法
将s中下标从startIndex到endIndex-1的部分替换为str.
例如
-
StringBuffer s = new StringBuffer( "I like math");
-
System.out.println(s);
-
s.replace( 7, 11, "Java");
-
System.out.println(s);
I like math
I like Java