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

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

C#のClone()メソッドは、既存の配列を複製(クローン)するために使用されます。このメソッドは元の配列と同じ要素を持つ新しい配列を作成しますが、浅いコピー(シャローコピー)である点に注意が必要です。つまり、配列自体は新しく作られますが、参照型の要素が指すオブジェクトは共有されます。

基本的な使い方

まず、複製対象となる配列を用意します。

string[] arr = { "Web", "World" };

次に、Clone()メソッドを呼び出して配列を複製します。Clone()の戻り値の型はobjectなので、as演算子を使って文字列配列にキャストするのが一般的です。

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

完全なサンプルコード

以下に、配列の複製から表示までの一連の流れを示す完全な例を紹介します。

using System;

class Program {
    static void Main() {
        // 複製元の配列
        string[] arr = { "Web", "World" };
        Console.WriteLine(string.Join(",", arr));

        // Clone()メソッドで配列を複製
        string[] arrClone = arr.Clone() as string[];
        Console.WriteLine(string.Join(",", arrClone));
    }
}

実行結果

Web,World
Web,World

このように、Clone()メソッドを使えば、元の配列と同じ内容を持つ新しい配列を簡単に作成できます。複製された配列に対して要素の変更を行っても、元の配列の要素そのものには影響しません(ただし、参照型の要素が指す先のオブジェクトは共有されるため、多次元配列やオブジェクト配列を扱う場合は注意してください)。

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

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

  2. JavaのStringクラスsubstring()メソッドの使い方を徹底解説

    substring()メソッドは、元の文字列の開始インデックス(beginIndex)から終了インデックス(endIndex)までの部分に対応するString型の値を返します。終了インデックスが指定されていない場合は、文字列の末尾までが切り出しの対象となります。Javaの文字列は0番目の位置からインデックスが始まるという点に注意しましょう。 構文 public String substring(int beginIndex) public String substring(int beginIndex, int endIndex) beginIndex: 部分文字列の切り出しを開始する位置を示