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

C#のClone()メソッドで配列を複製する方法

C#のClone()メソッドとは

C#におけるClone()メソッドは、配列の複製(コピー)を作成するためのメソッドです。元の配列と同じ要素を持つ新しい配列を簡単に生成できます。

なお、Clone()メソッドの戻り値はobject型であるため、通常はas演算子や明示的なキャストを使って、目的の配列型に変換して受け取ります。また、このメソッドによるコピーは「浅いコピー(シャローコピー)」である点にも注意しましょう。配列自体は新しく作られますが、参照型の要素は元の配列と同じオブジェクトを共有します。

Clone()メソッドで配列を複製するサンプルコード

以下は、Clone()メソッドを使って文字列配列を複製する例です。

using System;

class Program {
   static void Main() {
      string[] arr = { "one", "two", "three", "four", "five" };
      string[] arrCloned = arr.Clone() as string[];
      Console.WriteLine(string.Join(",", arr));
      // 複製された配列
      Console.WriteLine(string.Join(",", arrCloned));
      Console.WriteLine();
   }
}

実行結果

one,two,three,four,five
one,two,three,four,five

コードの解説

まず、次のように文字列型の配列を定義しています。

string[] arr = { "one", "two", "three", "four", "five" };

続いて、Clone()メソッドとas演算子を組み合わせることで、新しい文字列配列として元の配列を複製しています。

string[] arrCloned = arr.Clone() as string[];

Clone()メソッドの戻り値はobject型なので、as string[]と記述することでstring型の配列へ安全に変換しています。as演算子を使うと、変換が失敗した場合に例外をスローせずnullを返すため、安全な型変換が可能になります。

  1. 【初心者向け】JavaScriptのArray.from()メソッドの使い方を実例で解説

    JavaScript の Array.from() メソッドは、length プロパティを持つオブジェクト(配列風オブジェクト)や、文字列・Map・Set などの反復可能(イテラブル)なオブジェクトから、新しい Array オブジェクトを生成して返すためのメソッドです。元のオブジェクトは変更されず、常に新しい配列インスタンスが返されます。 基本構文 Array.from(obj, mapFunction, val) パラメータの説明 obj:配列へ変換したい対象のオブジェクト。配列風オブジェクト(length プロパティを持つもの)や反復可能なオブジェクトを指定します。 mapFunctio

  2. JavaScriptのArray.join()メソッドとは?配列を文字列に結合する使い方を解説

    Array.join()メソッドとは JavaScriptのArray.join()メソッドは、配列内のすべての要素を指定した区切り文字で連結し、ひとつの文字列として返すメソッドです。配列をカンマ区切りのテキストに変換したい場合や、独自の区切り文字を使ってデータを整形したい場合などに活用できます。 基本構文 array.join(separator) separatorには、要素同士をつなぐ区切り文字を指定します。引数を省略した場合は、デフォルトでカンマ(,)が使用されます。 押さえておきたいポイント 引数を省略すると、カンマ区切りの文字列が返される 元の配列は変更されない(非破壊的なメ