JavaでHello World
Google
  HOME  |  基礎  |  掲示板  |  ツール |  書籍  |  デザインパターン  |  リンク  |  フィードバック
JavaでHello World > Javaの基礎 > 文字列バッファ編  
メニュー
Home
情報交換掲示板
ツールの部屋
Java関連の書籍
変数編
文字列編
文字列の連結編
部分文字列編
文字列の比較編
文字列の長さ編
文字列バッファ編
代入演算子編
算術演算子編
演算子の簡略化編
インクリメント/デクリメント
比較演算子編
論理演算子編
ビット演算子編
シフト演算子編
三項演算子編
演算子の優先順位編
配列
多次元配列
ifステートメント
if elseステートメント
forループ
whileループ
doループ
switchステートメント
breakステートメント
continueステートメント
  2004/10/23  田中宏和
文字列バッファ編
◆文字列とは?
文字列とは「Hello World」のような文字の連続して並んだものです。Javaで文字列を扱うにはStringクラスを使用します。文字列をダブルクォーテーション「"」で囲むことによってStringクラスのインスタンスを生成することができます。
◆ここでの環境
OS Windows XP
J2SE SDK 1.4.2_04
◆文字列バッファ
文字列の追加、挿入、削除などの文字列の編集を行うにはStringBuffer(文字列バッファ)を使用します。 StringBuffer(文字列バッファ)は可変の文字列を実装します。String(文字列)は格納されている文字列を変更できませんが、StringBuffer(文字列バッファ)は格納されている文字列をメソッドの呼び出しによって変更することができます。追加、挿入、削除を行うappend、insert、deleteメソッドなどを使用できます。
文字列(String)から文字列バッファ(StringBuffer)の構築
文字列が格納された文字列バッファを構築するにはStringBufferクラスのコンストラクタの引数に格納する文字列を指定します。
[構文]
StringBuffer インスタンス名 = new StringBuffer(文字列);
■サンプルプログラム
StringBuffer1.java(ここからダウンロード)
public class StringBuffer1 {
  public static void main(String[] args) {
    // 文字列バッファsbの生成
    StringBuffer sb = new StringBuffer("Hello");
    // 表示
    System.out.println("文字列バッファsbの値は " + sb + " です。");
  }
}
■コンパイルと実行
コマンドプロンプト
C:\JavaHello\Basic\StringBuffer>javac StringBuffer1.java

C:\JavaHello\Basic\StringBuffer>java StringBuffer1
文字列バッファsbの値は Hello です。

C:\JavaHello\Basic\StringBuffer>

おおお!文字列バッファを作成できましたね!
 
文字列の追加
StringBufferオブジェクトに文字列を追加するにはappendメソッドを使用します。
[構文]
文字列バッファ.append(データ);
■サンプルプログラム
StringBuffer2.java(ここからダウンロード)
public class StringBuffer2 {
  public static void main(String[] args) {
    // 文字列バッファsbの生成
    StringBuffer sb = new StringBuffer("Hello");

    sb.append(" World"); // 追加
    // 表示
    System.out.println("文字列バッファsbの値は " + sb + " です。");
  }
}
■コンパイルと実行
コマンドプロンプト
C:\JavaHello\Basic\StringBuffer>javac StringBuffer2.java

C:\JavaHello\Basic\StringBuffer>java StringBuffer2
文字列バッファsbの値は Hello World です。

C:\JavaHello\Basic\StringBuffer>

おおお!文字列バッファに文字列を追加できましたね!
 
文字列の挿入
StringBufferオブジェクトに文字列を挿入すにはinsertメソッドを使用します。引数には挿入する場所と挿入する文字列を指定します。
[構文]
文字列バッファ.insert(挿入する場所 , データ);
■サンプルプログラム
StringBuffer3.java(ここからダウンロード)
public class StringBuffer3 {
  public static void main(String[] args) {
    // 文字列バッファsbの生成
    StringBuffer sb = new StringBuffer("Hello World");

    sb.insert(5 , " Hello"); // 挿入
    // 表示
    System.out.println("文字列バッファsbの値は " + sb + " です。");
  }
}
■コンパイルと実行
コマンドプロンプト
C:\JavaHello\Basic\StringBuffer>javac StringBuffer3.java

C:\JavaHello\Basic\StringBuffer>java StringBuffer3
文字列バッファsbの値は Hello Hello World です。

C:\JavaHello\Basic\StringBuffer>

おおお!文字列バッファに文字列を挿入できましたね!
※文字列バッファの中の文字の位置を表すインデックスは最初の文字が0から始まります。
 
文字列バッファの一部を削除
StringBufferオブジェクトの文字列の一部を削除するにはdeleteメソッドを使用します。引数には削除する文字列の始まり(指定した値を含む)から終わり(指定した値を含まない)までの場所を指定します。
[構文]
文字列バッファ.delete(始まり , 終わり);
■サンプルプログラム
StringBuffer4.java(ここからダウンロード)
public class StringBuffer4 {
  public static void main(String[] args) {
    // 文字列バッファsbの生成
    StringBuffer sb = new StringBuffer("Hello Hello World");

    sb.delete(5 , 11); // 削除
    // 表示
    System.out.println("文字列バッファsbの値は " + sb + " です。");
  }
}
■コンパイルと実行
コマンドプロンプト
C:\JavaHello\Basic\StringBuffer>javac StringBuffer4.java

C:\JavaHello\Basic\StringBuffer>java StringBuffer4
文字列バッファsbの値は Hello World です。

C:\JavaHello\Basic\StringBuffer>

おおお!文字列バッファから文字列を削除できましたね!
 
文字列バッファ(StringBuffer)→文字列(String)に変換
文字列バッファ(StringBuffer)を文字列(String)に変換するにはtoStringメソッドを使用します。
[構文]
文字列バッファ.toString();
■サンプルプログラム
StringBuffer5.java(ここからダウンロード)
public class StringBuffer5 {
  public static void main(String[] args) {
    // 文字列バッファsbの生成
    StringBuffer sb = new StringBuffer("Hello World");

    String s = sb.toString(); // 文字列バッファから文字列に変換
    // 表示
    System.out.println("文字列sの値は " + s + " です。");
  }
}
■コンパイルと実行
コマンドプロンプト
C:\JavaHello\Basic\StringBuffer>javac StringBuffer5.java

C:\JavaHello\Basic\StringBuffer>java StringBuffer5
文字列sの値は Hello World です。

C:\JavaHello\Basic\StringBuffer>

おおお!文字列バッファから文字列に変換できましたね!
 
■書籍
Java関連の書籍
 
  ネットで買えば断然お得!お買い物なら楽天市場
ツールの部屋 - Java関連の書籍 - デザインパターン - 情報交換掲示板 - HOME