StringBuffer クラスの各メソッド

import java.io.*;

public class Test {
	public static void main(String args[])
	{
		char c1[] = {'a', 'b', 'c', 'd', 'e'};   // char c1[] = {"abcde"}; は誤り
		StringBuffer sb1 = new StringBuffer("ABC");

		System.out.println("文字列の連結(基本StringBuffer " + sb1 + ")");
		System.out.print("   c1 ");
		for (int i1 = 0; i1 < c1.length; i1++)
			System.out.print(c1[i1]);
		System.out.println();
		System.out.println("   文字列型配列の要素1から3文字 " + sb1.append(c1, 1, 3));
		System.out.println("   double型数値 3.14 " + sb1.append(3.14));
		System.out.println("   int型数値 100 " + sb1.append(100));

		System.out.println(sb1 + " のバッファ容量");
		System.out.println("   現在 文字列長 " + sb1.length() +
                           " バッファ容量 " + sb1.capacity());
		sb1.setLength(11);
		System.out.println("   文字列長を11に変更 文字列長 " + sb1.length() +
                           " バッファ容量 " + sb1.capacity());

		System.out.println(sb1 + " 内の指定された位置の文字を取得");
		System.out.println("   5番目の文字 " + sb1.charAt(4));

		System.out.println("バッファ内の指定された位置の文字を削除");
		System.out.println("   " + sb1 + " の5番目の文字 " + sb1.deleteCharAt(4));
		System.out.println("   " + sb1 + " の要素2から要素4まで " + sb1.delete(2, 5));

		System.out.println(sb1 + " の要素4から要素5までを,文字型配列c1の要素1以降にコピー");
		System.out.print("   c1(コピー前) ");
		for (int i1 = 0; i1 < c1.length; i1++)
			System.out.print(c1[i1]);
		System.out.println();
		sb1.getChars(4, 6, c1, 1);
		System.out.print("   c1(コピー後) ");
		for (int i1 = 0; i1 < c1.length; i1++)
			System.out.print(c1[i1]);
		System.out.println();

		System.out.println("文字列の挿入(基本StringBuffer " + sb1 + ")");
		System.out.println("   文字列 AAA を位置2 " + sb1.insert(2, "AAA"));
		System.out.println("   double型数値 1.3 を位置1 " + sb1.insert(1, 1.3));
		System.out.println("   int型数値 10 を位置5 " + sb1.insert(5, 10));

		System.out.println("文字列の置換");
		System.out.println("   文字列 " + sb1 + " の要素5~6からなる文字列を,文字列 XXX で置換");
		System.out.println("      " + sb1.replace(5, 7, "XXX"));
		System.out.print("   要素6をZで置き換える ");
		sb1.setCharAt(6, 'Z');
		System.out.println(sb1);

		System.out.println("文字列 " + sb1 + " を逆に並べ替える");
		System.out.println("   " + sb1.reverse());

		System.out.println("部分文字列,String型に変換");
		System.out.println("   " + sb1 + " 要素5から7 "  + sb1.substring(5, 8));
		System.out.println("   String型 " + sb1.toString());
	}
}
		
(出力)
文字列の連結(基本StringBuffer ABC)
   c1 abcde
   文字列型配列の要素1から3文字 ABCbcd
   double型数値 3.14 ABCbcd3.14
   int型数値 100 ABCbcd3.14100
ABCbcd3.14100 のバッファ容量
   現在 文字列長 13 バッファ容量 19
   文字列長を11に変更 文字列長 11 バッファ容量 19
ABCbcd3.141 内の指定された位置の文字を取得
   5番目の文字 c
バッファ内の指定された位置の文字を削除
   ABCbcd3.141 の5番目の文字 ABCbd3.141
   ABCbd3.141 の要素2から要素4まで AB3.141
AB3.141 の要素4から要素5までを,文字型配列c1の要素1以降にコピー
   c1(コピー前) abcde
   c1(コピー後) a14de
文字列の挿入(基本StringBuffer AB3.141)
   文字列 AAA を位置2 ABAAA3.141
   double型数値 1.3 を位置1 A1.3BAAA3.141
   int型数値 10 を位置5 A1.3B10AAA3.141
文字列の置換
   文字列 A1.3B10AAA3.141 の要素5~6からなる文字列を,文字列 XXX で置換
      A1.3BXXXAAA3.141
   要素6をZで置き換える A1.3BXZXAAA3.141
文字列 A1.3BXZXAAA3.141 を逆に並べ替える
   141.3AAAXZXB3.1A
部分文字列,String型に変換
   141.3AAAXZXB3.1A 要素5から7 AAA
   String型 141.3AAAXZXB3.1A