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

【C#】InsertRange()メソッドでリストに複数の要素を一括挿入する方法

C#で既存のリストに複数の要素をまとめて挿入したい場合は、InsertRange()メソッドを使用します。このメソッドを使えば、配列や別のリストなどのコレクション要素を、指定した位置から一括で追加できるため、1つずつAdd()で追加する手間を省けます。

InsertRangeメソッドの基本構文

InsertRange()はList<T>クラスが提供するメソッドで、次のように記述します。

list.InsertRange(挿入開始位置(インデックス), 追加するコレクション);

第1引数には挿入を開始するインデックス番号を、第2引数には追加したいコレクション(配列などIEnumerable<T>を実装したオブジェクト)を指定します。

サンプルコード

まず、元となるリストを作成します。

List<int> arr1 = new List<int>();
arr1.Add(10);
arr1.Add(20);
arr1.Add(30);
arr1.Add(40);
arr1.Add(50);

次に、リストへ追加するための配列を用意します。この配列の要素を先ほどのリストに挿入します。

int[] arr2 = new int[4];
arr2[0] = 60;
arr2[1] = 70;
arr2[2] = 80;
arr2[3] = 90;

InsertRange()メソッドを使い、インデックス5の位置に配列の要素を一括挿入します。

arr1.InsertRange(5, arr2);

ここまでの処理をまとめた完全なコードは以下の通りです。

実行例

using System;
using System.Collections.Generic;

public class Demo {
    public static void Main() {
        List<int> arr1 = new List<int>();
        arr1.Add(10);
        arr1.Add(20);
        arr1.Add(30);
        arr1.Add(40);
        arr1.Add(50);

        Console.WriteLine("Initial List ...");
        foreach (int i in arr1) {
            Console.WriteLine(i);
        }

        int[] arr2 = new int[4];
        arr2[0] = 60;
        arr2[1] = 70;
        arr2[2] = 80;
        arr2[3] = 90;

        arr1.InsertRange(5, arr2);

        Console.WriteLine("After adding elements ...");
        foreach (int i in arr1) {
            Console.WriteLine(i);
        }
    }
}

出力結果

Initial List ...
10
20
30
40
50
After adding elements ...
10
20
30
40
50
60
70
80
90

まとめ

InsertRange()メソッドを活用すれば、複数の要素を効率的にリストへ挿入でき、既存リストの中間位置への追加にも対応します。大量のデータを扱う際や、配列とリストを連携させたい場合に非常に便利なメソッドなので、ぜひ活用してみてください。

  1. PythonのNumPyで複数の行列の逆行列を一度に計算する方法

    Pythonで行列の(乗法)逆行列を計算するには、numpy.linalg.inv()メソッドを使用します。正方行列 a が与えられたとき、dot(a, ainv) = dot(ainv, a) = eye(a.shape[0]) を満たす行列 ainv を返します。このメソッドは、行列 a の乗法逆行列を結果として返し、第1引数 a には逆行列を求めたい行列を指定します。特に便利なのは、3次元配列として複数の行列をまとめて渡すと、それぞれの行列に対して個別に逆行列を一括で計算できる点です。本記事では、その具体的な手順をサンプルコードとともに解説します。手順まず、必要なライブラリをインポートし

  2. Pythonでリスト内の「Kより大きい最小値」を取得する3つの方法

    Pythonでデータ分析を行う際、リストから特定の条件を満たす要素を抽出したい場面は多くあります。本記事では、その中でも特に実用的なケースとして、「指定した値Kより大きい要素のうち、最も小さい値(=Kに最も近い大きい値)」を取得する方法を3つ紹介します。方法1:min関数とジェネレータ式を使うまず基本となるのが、リスト内包表記(ジェネレータ式)と min 関数を組み合わせる方法です。forループでリストの各要素を走査しながら、「値がKより大きい」という条件でフィルタリングし、条件を満たす要素の中から min 関数を使って最小値を取り出します。サンプルコード k) # 結果を表示 print(