C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#でStringBuilderを作成する方法|サンプルコード付きで解説


C#でStringBuilderを作成するには、System.Text名前空間を読み込み、new StringBuilder()でインスタンスを生成します。StringBuilderは文字列の連結や変更を高速に処理できる便利なクラスで、頻繁に文字列を操作する場合にstring型よりも高いパフォーマンスを発揮します。

例1:StringBuilderの作成とEqualsメソッドによる比較

まずは、基本的なStringBuilderの作成方法と、Equalsメソッドを使った比較の例を見てみましょう。

using System;
using System.Text;

public class Demo {
   public static void Main(String[] args) {
      StringBuilder strBuilder1 = new StringBuilder("Tim");
      StringBuilder strBuilder2 = new StringBuilder("Tom");

      Console.WriteLine("Is StringBuilder1 equal to StringBuilder2? = " + strBuilder1.Equals(strBuilder2));
   }
}

このプログラムを実行すると、次のような出力が得られます。

Is StringBuilder1 equal to StringBuilder2? = False

「Tim」と「Tom」という異なる内容を持つStringBuilderを比較したため、結果はFalseになっています。

例2:各種コンストラクタとCapacityプロパティの使い方

続いて、初期値を指定するコンストラクタ、引数なしのコンストラクタ、初期容量を指定するコンストラクタの違いと、Capacityプロパティによる容量の確認方法を紹介します。

using System;
using System.Text;

public class Demo {
   public static void Main(String[] args) {
      StringBuilder strBuilder1 = new StringBuilder("John");
      StringBuilder strBuilder2 = new StringBuilder("John");
      StringBuilder strBuilder3 = new StringBuilder();
      StringBuilder strBuilder4 = new StringBuilder(5);

      strBuilder2 = strBuilder3;

      Console.WriteLine("Is StringBuilder3 equal to StringBuilder2? = " + strBuilder3.Equals(strBuilder2));
      Console.WriteLine("StringBuider1 capacity = " + strBuilder1.Capacity);
      Console.WriteLine("StringBuider2 capacity = " + strBuilder2.Capacity);
      Console.WriteLine("StringBuider3 capacity = " + strBuilder3.Capacity);
      Console.WriteLine("StringBuider4 capacity = " + strBuilder4.Capacity);
   }
}

実行結果は以下の通りです。

Is StringBuilder3 equal to StringBuilder2? = True
StringBuider1 capacity = 16
StringBuider2 capacity = 16
StringBuider3 capacity = 16
StringBuider4 capacity = 5

strBuilder2 = strBuilder3;によって両者が同じインスタンスを参照するようになったため、比較結果はTrueとなっています。また、初期値も容量も指定しない場合の既定容量は16ですが、new StringBuilder(5)のように数値を渡すと、その値が初期容量として設定されます。

まとめ

  • new StringBuilder("文字列")で初期値を持つインスタンスを作成できる
  • new StringBuilder(数値)で初期容量を指定できる
  • 容量を指定しない場合、既定の容量は16
  • Capacityプロパティで現在の容量を取得できる
  • EqualsメソッドでStringBuilder同士を比較できる
  1. Photoshopで完璧なGIFアニメーションを作成する方法

    PCでGIFを作成する方法は数多くありますが、その多くはGIF作成専用の小型アプリを使う手軽なものです。しかし、フリーウェアでできることは、Photoshopならより高品質に実現できます。すでにパソコンにPhotoshopをインストールしているなら、GIFを作りたいときにわざわざ別のソフトを導入する必要はありません。この記事では、Photoshopを使ってGIFを作る2つの方法――動画ファイルからGIFを作る方法と、複数の画像をつなぎ合わせてGIFを作る方法――を、初心者にもわかりやすく解説します。動画をレイヤー(画像)に変換するまず、動画(またはその一部)をGIFに変換したい場合は、その動画

  2. Windows 10でクリップボードをクリアするショートカットを作成する3つの方法

    クリップボードは、アプリケーション間でデータをやり取りするための一時的な保存領域です。ある場所から情報をコピーして別の場所で使いたいとき、コピーした内容は一時的にクリップボードに格納されます。テキスト、画像、ファイル、フォルダ、動画、音楽など、さまざまなデータをクリップボードにコピーできます。 クリップボードの唯一の欠点は、一度に保持できる情報が1つだけという点です。新しい内容をコピーすると、以前に保存されていた情報は上書きされます。そのため、家族や友人とPCを共有している場合は、PCを離れる前にクリップボードの内容を消去しておくことが重要です。個人情報やパスワードなどの機密データが残ったま