1. 程式人生 > >StringBuffer類的常用方法

StringBuffer類的常用方法

append()和insert() 同:append()和insert()方法都可以用於向字元緩衝區中新增任意型別的資料 異:append()方法僅能將資料新增到字元緩衝區的末尾;insert()方法可以向字元緩衝區中指定位置新增資料

StringBuffer sb=new StringBuffer();
int a1=100;
char ch1='日';
String str1="衝刺,決勝高考!";
sb.append(a1).append(ch1).append(str1);
System.err.println(sb);
		
int a2=2;
char ch2='+';
String str2=
"天考試"; sb.insert(6, ch2).insert(7, a2).insert(8, str2); sb.insert(16, ",幸福一生"); System.err.println(sb); 輸出結果: 100日衝刺,決勝高考! 100日衝刺+2天考試,決勝高考,幸福一生!

deleteCharAt()和delete(a,b) deleteCharAt():用於刪除StringBuffer物件中指定位置的一個字元 delete(a,b):用於刪除StringBuffer物件中指定範圍的字元或字串序列(範圍為:[a,b),該範圍為一個半開半閉區間);因為字串的索引為非負數,所以a,b>=0

,否則程式執行後會報==>字串索引越界異常:StringIndexOutOfBoundsException

StringBuffer sb=new StringBuffer("100日衝刺,決勝高考!");
sb.deleteCharAt(2);
System.err.println(sb);
sb.delete(2, 3);
System.err.println(sb);
sb.delete(7, 1000);
System.err.println(sb);
sb.delete(-1, 1);  //StringIndexOutOfBoundsException
System.err.println
(sb); 輸出結果: 10日衝刺,決勝高考! 10衝刺,決勝高考! 10衝刺,決勝 Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -1

setCharAt()和replace() setCharAt():用一個字元替換StringBuffer物件中指定位置的一個字元 replace():用一個字串替換StringBuffer物件中指定範圍的字元或字串序列

StringBuffer sb=new StringBuffer("100日衝刺,決勝高考!");
sb.setCharAt(3,'天');
System.err.println(sb);
sb.replace(7, 10, "圓了清華夢");
System.err.println(sb);

輸出結果:
100天衝刺,決勝高考!
100天衝刺,圓了清華夢考!

reverse():對字串進行取反操作

StringBuffer sb=new StringBuffer("我愛你");
sb.reverse();
System.err.println(sb);

輸出結果:
你愛我

toString():toString()方法是String類內部定義的方法,常用於返回StringBuffer物件的字串格式

StringBuffer sb=new StringBuffer();
List<Object> list=new ArrayList<Object>();
list.add(100);
list.add('日');
list.add("衝刺,決勝高考!");
for(Object obj:list){
	sb.append(obj);
}
String str=sb.toString();
System.err.println(sb);

輸出結果:
100日衝刺,決勝高考!