.NETヘルプ C# List (開発者向けの仕組み) Jacob Mellor 更新日:2025年7月28日 IronPDF をダウンロード NuGet ダウンロード DLL ダウンロード Windows 版 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる Grokで開く このページについてGrokに質問する 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る リストは、C#でデータのコレクションを保存および操作するために使用される、多才で動的なデータ構造です。 これらは、強力で型セーフなコレクション クラスと厳密に型指定されたオブジェクトの範囲を提供する System.Collections.Generic 名前空間の一部です。 この初心者向けチュートリアルでは、C#リストの基本と要素の操作を説明します。 リストの作成 List クラスの使用を開始するには、まずコードに System.Collections.Generic 名前空間を含める必要があります。 using System.Collections.Generic; using System.Collections.Generic; $vbLabelText $csharpLabel 汎用名前空間を追加した後、山括弧内に格納するすべての要素のデータ型を指定して、新しい List オブジェクトを作成します (< >)。 整数のリストを作成する方法の例を次に示します。 List<int> numbers = new List<int>(); List<int> numbers = new List<int>(); $vbLabelText $csharpLabel また、初期値でリストを初期化するか、このように指定されたコレクションによって定義することもできます。 List<string> fruits = new List<string> { "apple", "banana", "cherry" }; List<string> fruits = new List<string> { "apple", "banana", "cherry" }; $vbLabelText $csharpLabel リストのデフォルトの初期容量を指定することもできます。指定された初期容量は、そのリストのデフォルトの最大容量です。 リストのメソッド リストへの要素数の追加 リストに要素を追加するには、Add() メソッドを使用します。 numbers.Add(1); // Adds first element numbers.Add(2); numbers.Add(3); numbers.Add(1); // Adds first element numbers.Add(2); numbers.Add(3); $vbLabelText $csharpLabel また、AddRange メソッドを使用して、指定したコレクションの要素の範囲をリストに追加することもできます。 List<int> moreNumbers = new List<int> { 4, 5, 6 }; numbers.AddRange(moreNumbers); List<int> moreNumbers = new List<int> { 4, 5, 6 }; numbers.AddRange(moreNumbers); $vbLabelText $csharpLabel リスト要素へのアクセス 配列と同様に、インデックスを使用してリストの個々の要素にアクセスできます。 string firstFruit = fruits[0]; // "apple" string secondFruit = fruits[1]; // "banana" string firstFruit = fruits[0]; // "apple" string secondFruit = fruits[1]; // "banana" $vbLabelText $csharpLabel リストは0ベースのインデックスであることに注意してください。そのため、最初の要素のインデックスは0です。上記の例では、要素が存在する場合、その要素は文字列に格納されます。 リスト要素の変更 リストの要素を変更するには、単に目的のインデックスの要素に新しい値を割り当てます。0ベースのインデックスであることを忘れないでください。 fruits[1] = "blueberry"; fruits[1] = "blueberry"; $vbLabelText $csharpLabel 今や、フルーツリストの2番目の要素は"バナナ"ではなく"ブルーベリー"です。 リストから要素の削除 リストから要素を削除するには、指定した要素の最初の出現を削除する Remove メソッドを使用できます。 fruits.Remove("apple"); fruits.Remove("apple"); $vbLabelText $csharpLabel あるいは、RemoveAt メソッドを使用して、指定したインデックスの要素を削除することもできます。 fruits.RemoveAt(0); fruits.RemoveAt(0); $vbLabelText $csharpLabel リストからすべての要素を削除するには、Clear メソッドを使用します。 fruits.Clear(); fruits.Clear(); $vbLabelText $csharpLabel リストの要素の検索 リストに特定の要素が含まれているかどうかを確認するには、Contains() メソッドを使用できます。 bool containsApple = fruits.Contains("apple"); // true bool containsApple = fruits.Contains("apple"); // true $vbLabelText $csharpLabel 要素の最初の出現のインデックスを見つけるには、IndexOf メソッドを使用します。 int appleIndex = fruits.IndexOf("apple"); // 0 int appleIndex = fruits.IndexOf("apple"); // 0 $vbLabelText $csharpLabel 要素が見つからない場合、IndexOf は -1 を返します。 リストをループ処理 リスト内の要素を反復処理するには、foreach ループを使用できます。 foreach (string fruit in fruits) { Console.WriteLine(fruit); } foreach (string fruit in fruits) { Console.WriteLine(fruit); } $vbLabelText $csharpLabel あるいは、リスト内の要素数を返す Count プロパティを持つ for ループを使用することもできます。 for (int i = 0; i < fruits.Count; i++) { Console.WriteLine(fruits[i]); } for (int i = 0; i < fruits.Count; i++) { Console.WriteLine(fruits[i]); } $vbLabelText $csharpLabel リストの並べ替え リストを昇順で並べ替えるには、Sort メソッドを使用します。 List<int> unsortedNumbers = new List<int> { 5, 2, 8, 1, 4 }; unsortedNumbers.Sort(); // Now, unsortedNumbers is { 1, 2, 4, 5, 8 } List<int> unsortedNumbers = new List<int> { 5, 2, 8, 1, 4 }; unsortedNumbers.Sort(); // Now, unsortedNumbers is { 1, 2, 4, 5, 8 } $vbLabelText $csharpLabel リストを降順で並べ替えるには、カスタム比較で Sort メソッドを使用できます。 unsortedNumbers.Sort((a, b) => b.CompareTo(a)); // Now, unsortedNumbers is { 8, 5, 4, 2, 1 } unsortedNumbers.Sort((a, b) => b.CompareTo(a)); // Now, unsortedNumbers is { 8, 5, 4, 2, 1 } $vbLabelText $csharpLabel より複雑な並べ替えを行うには、カスタム IComparer クラスを実装するか、LINQ (統合言語クエリ) を使用します。 二分探索アルゴリズムは、ソートされたリストに適用されます。 リストと LINQ を組み合わせて使用する LINQ を使用すると、リストを含むコレクションに強力なクエリと変換を実行できます。 LINQ を使用するには、まずコードに System.Linq 名前空間を含める必要があります。 using System.Linq; using System.Linq; $vbLabelText $csharpLabel ここに、リスト上のLINQクエリのいくつかの例があります。 リストのフィルタリング List<int> evenNumbers = numbers.Where(x => x % 2 == 0).ToList(); List<int> evenNumbers = numbers.Where(x => x % 2 == 0).ToList(); $vbLabelText $csharpLabel リスト内の要素をマッピング(変換) List<string> fruitNamesUpperCase = fruits.Select(x => x.ToUpper()).ToList(); List<string> fruitNamesUpperCase = fruits.Select(x => x.ToUpper()).ToList(); $vbLabelText $csharpLabel リスト内の最小および最大値の検索 int minValue = numbers.Min(); int maxValue = numbers.Max(); int minValue = numbers.Min(); int maxValue = numbers.Max(); $vbLabelText $csharpLabel リストを配列に変換 リストを配列に変換するには、ToArray メソッドを使用できます。 int[] numbersArray = numbers.ToArray(); int[] numbersArray = numbers.ToArray(); $vbLabelText $csharpLabel IronPDF を使用してリスト データを PDF にエクスポートする このセクションでは、IronPDF ライブラリを使用してリスト内のデータをPDFファイルにエクスポートする方法を示します。 これは、レポートやデータの印刷可能なバージョンを生成したいときに便利です。 まず、IronPDF NuGet パッケージをプロジェクトにダウンロードしてインストールします。 Install-Package IronPdf 次に、コードに IronPdf 名前空間を含めます。 using IronPdf; using IronPdf; $vbLabelText $csharpLabel ここで、文字列を HTML テーブルに変換し、それを PDF ファイルにエクスポートする簡単な関数を作成しましょう。 using System.Collections.Generic; using System.Text; using IronPdf; void ExportListToPdf(List<string> data, string pdfFilePath) { // Create an HTML table from the list data StringBuilder htmlBuilder = new StringBuilder(); htmlBuilder.Append("<table><tr><th>Item</th></tr>"); foreach (string item in data) { htmlBuilder.Append($"<tr><td>{item}</td></tr>"); } htmlBuilder.Append("</table>"); // Convert the HTML table to a PDF using IronPDF var renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlBuilder.ToString()); // Save the PDF to the specified file path pdf.SaveAs(pdfFilePath); } using System.Collections.Generic; using System.Text; using IronPdf; void ExportListToPdf(List<string> data, string pdfFilePath) { // Create an HTML table from the list data StringBuilder htmlBuilder = new StringBuilder(); htmlBuilder.Append("<table><tr><th>Item</th></tr>"); foreach (string item in data) { htmlBuilder.Append($"<tr><td>{item}</td></tr>"); } htmlBuilder.Append("</table>"); // Convert the HTML table to a PDF using IronPDF var renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlBuilder.ToString()); // Save the PDF to the specified file path pdf.SaveAs(pdfFilePath); } $vbLabelText $csharpLabel この関数を使用するには、リストとPDFファイルのパスを指定して呼び出します。 List<string> fruits = new List<string> { "apple", "banana", "cherry" }; ExportListToPdf(fruits, "Fruits.pdf"); List<string> fruits = new List<string> { "apple", "banana", "cherry" }; ExportListToPdf(fruits, "Fruits.pdf"); $vbLabelText $csharpLabel これにより、IronPDF で HTML を PDF に変換 することによって、フルーツのリストを含むテーブルを持つ"Fruits.pdf"という名前の PDF ファイルが生成されます。 HTML テーブルにカスタム スタイルを追加したり、PDF に追加コンテンツを追加したりするなど、ニーズに合わせて ExportListToPdf 関数を変更できます。 結論 この初心者向けチュートリアルでは、C# リストの基本を説明し、IronPDF と統合してリスト データを PDF ファイルにエクスポートする方法を示しました。 IronPDF をプロジェクトに組み込むことで、C# プロジェクトからレポート、請求書、その他の印刷可能な文書を簡単に生成できます。 IronPDF は無料トライアルを提供しており、購入前にその機能をテストできます。 よくある質問 C#でリストを作成する方法は? C#でリストを作成するには、System.Collections.Generic名前空間を含める必要があります。その後、山括弧内にデータ型を指定してリストを宣言できます。例:List numbers = new List(); C#リストに要素を追加するための方法は何ですか? C#リストに要素を追加するには、個々の要素を追加する場合はAdd()メソッドを使用し、要素のコレクションを追加する場合はAddRange()を使用します。 C#リストをPDFファイルにエクスポートする方法は? C#リストをPDFファイルにエクスポートするには、IronPDFライブラリを使用できます。リストデータをHTML表形式に変換し、その後IronPDFを使用してPDFとしてレンダリングします。 C#リストをソートする最良の方法は何ですか? C#リストを昇順でソートするにはSort()メソッドを使用できます。降順でソートするには、カスタム比較デリゲートを使用してSort()を使用できます。 C#リストの要素にアクセスする方法は? C#リストの要素は、配列と同様に、そのインデックスを使用してアクセスできます。リストはゼロベースのインデックス付けがされているので、リストの位置を使用して要素を取得できます。 C#リストから要素を削除するためのオプションは何ですか? 特定の要素を削除するにはRemove()メソッドを、特定のインデックスを削除するにはRemoveAt()、すべての要素を削除するにはClear()を使用できます。 C#リストでLINQをどのように活用できますか? LINQは、C#リストで強力なクエリと変換を行うために使用できます。フィルタリング、マッピング、最小値や最大値を効率的に見つけるなどです。 C#でリストを配列に変換する方法は? C#リストを配列に変換するには、リストの要素を含む新しい配列を作成するToArray()メソッドを使用できます。 C#リストの一般的な使用例は何ですか? C#リストは、データの動的なコレクションを管理したり、LINQを使用して複雑なクエリを行ったり、IronPDFのようなライブラリを使用してレポートや文書を生成するのに一般的に使用されます。 C#リストの要素を反復する方法は? C#リストの要素を反復するには、単純な反復にはforeachループを使用し、インデックスが必要な場合はforループを使用します。 Jacob Mellor 今すぐエンジニアリングチームとチャット 最高技術責任者(CTO) ジェイコブ・メラーはIron Softwareの最高技術責任者(CTO)であり、C# PDFテクノロジーを開拓する先見的なエンジニアです。Iron Softwareのコアコードベースを支えるオリジナル開発者として、彼は創業以来、会社の製品アーキテクチャを形成し、CEOのCameron Rimingtonとともに、会社をNASA、Tesla、および世界的な政府機関にサービスを提供する50人以上の会社に変えました。1999年にロンドンで最初のソフトウェアビジネスを開業し、2005年に最初 for .NETコンポーネントを作成した後、Microsoftのエコシステム全体で複雑な問題を解決することを専門としました。彼の主要なIronPDFとIron Suite .NETライブラリは、世界中で3000万以上のNuGetインストールを達成し、彼の基礎となるコードは世界中で使用されている開発者ツールに力を与え続けています。25年の商業経験と41年のコーディングの専門知識を持つJacobは、次世代の技術リーダーを指導しながら、エンタープライズグレードのC#、Java、Python PDFテクノロジーにおけるイノベーションの推進に注力しています。 関連する記事 更新日 2026年2月20日 CLIの簡素化と.NETの橋渡し:Curl DotNetとIronPDFを使う Jacob Mellorは、.NETエコシステムにcURLの親しみやすさをもたらすために作成されたライブラリ、CurlDotNetでこのギャップを埋めました。 詳しく読む 更新日 2025年12月20日 RandomNumberGenerator C# RandomNumberGenerator C#クラスを使用すると、PDF生成および編集プロジェクトを次のレベルに引き上げることができます 詳しく読む 更新日 2025年12月20日 C# String Equals(開発者向けの仕組み) 強力なPDFライブラリであるIronPDFと組み合わせることで、switchパターンマッチングは、ドキュメント処理のためのよりスマートでクリーンなロジックを構築できます 詳しく読む C# This (開発者向けの仕組み)Visual Studioとは何か (開発...
更新日 2026年2月20日 CLIの簡素化と.NETの橋渡し:Curl DotNetとIronPDFを使う Jacob Mellorは、.NETエコシステムにcURLの親しみやすさをもたらすために作成されたライブラリ、CurlDotNetでこのギャップを埋めました。 詳しく読む
更新日 2025年12月20日 RandomNumberGenerator C# RandomNumberGenerator C#クラスを使用すると、PDF生成および編集プロジェクトを次のレベルに引き上げることができます 詳しく読む
更新日 2025年12月20日 C# String Equals(開発者向けの仕組み) 強力なPDFライブラリであるIronPDFと組み合わせることで、switchパターンマッチングは、ドキュメント処理のためのよりスマートでクリーンなロジックを構築できます 詳しく読む