StringBuffer 是用在需要一系列編修的文件上,讓編修都在StringBuffer中,完成後再輸出檔案。以下用一個編修文章的範例來引導使用 StringBuffer:

package stringbufferexample;
public class StringBufferExample
{
    public static void main(String[] args)
    {
        String text = "枯藤老樹昏,小橋流水人家,古道西風瘦馬。夕陽西夏,斷腸人在";
        //正確句子為: 枯藤老樹昏鴉,小橋流水人家,古道西風瘦馬。 夕陽西下,斷腸人在天涯。
        StringBuffer sb = new StringBuffer(text);
        //先新增"鴨"字
        //Step1: 由於我們根本不知道"鴨"在text的哪個位置,所以先解決這個問題
        System.out.println(sb.indexOf("昏"));
        //output: 4,所以"鴨"是放在第五個
        //Step2: 加入鴨字,我們知道它在"昏"的後面
        sb.insert(sb.indexOf("昏")+1, "鴨");
        System.out.println(sb); 
        //output: 枯藤老樹昏鴨,小橋流水人家,古道西風瘦馬。夕陽西夏,斷腸人在
        //之後發現"夏"這個字要改成"下",所以要刪除與新增的動作
        int temp = sb.indexOf("夏");
        sb.deleteCharAt(temp);//indexOf這個函數上面有用過,所以直接拿來用
        System.out.println(sb);
        //output: 枯藤老樹昏鴨,小橋流水人家,古道西風瘦馬。夕陽西,斷腸人在
        sb.insert(temp, "下");
        System.out.println(sb);
        //output: 枯藤老樹昏鴨,小橋流水人家,古道西風瘦馬。夕陽西下,斷腸人在
        //最後要加上少掉的"天涯。"
        sb.append("天涯。");
        System.out.println(sb);
        //output: 枯藤老樹昏鴨,小橋流水人家,古道西風瘦馬。夕陽西下,斷腸人在天涯。
    }
}
arrow
arrow
    全站熱搜

    葛瑞斯肯 發表在 痞客邦 留言(0) 人氣()