C#で既存のリストに2つ目のリストを追加する方法|AddRange()メソッドの使い方
C#で既存のリスト(List)に2つ目のリストを結合(追加)したい場合は、AddRange()メソッドを使用します。このメソッドを使うと、引数に渡したコレクションのすべての要素を、呼び出し元のリストの末尾へ一括で追加できます。
1つ目のリストを作成する
まずは元となるリストです。
List<string> list1 = new List<string>();
list1.Add("One");
list1.Add("Two");
2つ目のリストを作成する
次に、追加したいリストを用意します。
List<string> list2 = new List<string>();
list2.Add("Three");
list2.Add("Four");
AddRange()でリストを結合する
リストの結合は、たった1行で完了します。
list1.AddRange(list2);
これで、list1 の末尾に list2 の全要素が追加されます。それでは、実行結果まで確認できる完全なコードを見てみましょう。
サンプルコード(全体)
using System;
using System.Collections.Generic;
using System.Linq;
public class Demo {
public static void Main() {
List<string> list1 = new List<string>();
list1.Add("One");
list1.Add("Two");
Console.WriteLine("First list...");
foreach(string value in list1) {
Console.WriteLine(value);
}
Console.WriteLine("Second list...");
List<string> list2 = new List<string>();
list2.Add("Three");
list2.Add("Four");
foreach(string value in list2) {
Console.WriteLine(value);
}
Console.WriteLine("After Append...");
list1.AddRange(list2);
foreach(string value in list1) {
Console.WriteLine(value);
}
}
}
実行結果
First list... One Two Second list... Three Four After Append... One Two Three Four
覚えておきたいポイント
- AddRange():引数に渡したコレクションの全要素をリストの末尾に追加します。リスト同士を連結する最もシンプルで一般的な方法です。
- LINQのConcat()との違い:Concat() は新しいシーケンスを返すだけで元のリストは変わりませんが、AddRange() は元のリストそのものを更新します。
- パフォーマンス:大量の要素を追加する場合は、あらかじめ Capacity プロパティを設定しておくと、内部配列の再割り当てが減り処理が高速化されます。
-
【Android】StringWriterのappendメソッドで文字列を連結する方法を解説
この記事では、Androidアプリ開発においてStringWriterクラスのappendメソッドを使用して文字列を追加・連結する方法を、サンプルコード付きでわかりやすく解説します。StringWriterは文字列を内部バッファに蓄積できる便利なクラスで、複数の文字列を動的に組み立てたい場合に役立ちます。 手順1:新規プロジェクトを作成する まず、Android Studioを起動し、「File」→「New Project」を選択して新しいプロジェクトを作成します。必要な項目をすべて入力し、プロジェクトのセットアップを完了させてください。 手順2:レイアウトファイル(activity_main
-
Redis APPENDコマンドの使い方 – 既存の文字列値に文字列を追加する方法
このチュートリアルでは、Redisデータストア内のキーに保存されている既存の文字列値に対して、別の文字列を追加(連結)する方法を解説します。この操作には、RedisのAPPENDコマンドを使用します。 APPENDコマンドとは APPENDコマンドは、指定した文字列を、キーに保存されている既存の文字列値の末尾に追加します。もしキーがRedisデータストアに存在しない場合は、追加操作を実行する前に、まず空の文字列を持つキーが自動的に新規作成されます。 一方、キーが存在していても、その値が文字列型ではない場合(リスト・セット・ハッシュなどの場合)は、エラーが返されます。また、このコマンドはO(1)