IRONSOFTWAREHOME
開発者向けアップデート

C# ArrayList(開発者向けの動作方法)

Jacob Mellor、Ironチームの最高技術責任者(CTO)
Jacob Mellor
Updated: 2026年4月21日

.NET Framework のコレクション名前空間の一部である ArrayList クラスは、オブジェクトのコレクションを格納するために設計されています。 これは非ジェネリックコレクションであり、任意のデータ型のアイテムを保持できます。 この特徴により、非常に柔軟ですが、ジェネリックコレクションと比較して型の安全性が低くなります。 ArrayList は重複する要素を含むことができ、有効な値が追加または削除されるときに動的にサイズを変更することができます。 この記事では、ArrayList の基本と IronPDF ライブラリの機能について説明します。

ArrayList の基本

ArrayList は本質的に非ジェネリックコレクションであり、任意のデータ型の多数の要素を格納できるため、さまざまなプログラミングシナリオに適した汎用性のある選択肢です。 要素を追加または削除するときに固定サイズの制約がないことがその主な特徴の一つです。 ArrayList は新しい要素を収容するために自動的にサイズを調整し、これは IList インターフェースの実装によって可能になっています。 この動的なサイズ変更は、要素数が一生の間に変化するコレクションを必要とするアプリケーションにとって重要です。

ArrayList をインスタンス化するとき、整数や文字列から複雑なカスタムオブジェクトまで、任意のオブジェクト値を保持できるコレクションを作成しています。 Add などのメソッドのおかげで、ArrayList に要素を追加することは簡単で、コレクションの末尾にオブジェクト値を追加し、Insert は指定されたインデックスに新しいアイテムを配置し、必要に応じて既存の要素をシフトして空間を作ります。 この柔軟性により、開発者はアプリケーションの進化に応じてコレクションをより効果的に管理できます。

要素の操作

さまざまなタイプのデータのコレクションを構築している状況を考えると、ArrayList に要素を追加することは簡単で直感的です。 Add メソッドを使用すると、文字列や整数、あるいは他のコレクションからもArrayList に任意のオブジェクトを追加できます。 ArrayList の容量は必要に応じて自動的に増加し、新しいオブジェクト要素のための十分な空間を確保します。 この自動サイズ変更は、新しい要素を収容するために手動でサイズを変更する必要がある従来の配列に対する大きな利点です。

ArrayList はまた、特定の位置または整数インデックスで要素を挿入および削除するためのメソッドを提供します。 Insert メソッドを使用すると、指定された位置に要素を追加でき、任意のインデックスに新しいアイテムを正確に配置することが可能です。 Remove と RemoveAt メソッドは、削除対象のオブジェクトまたはコレクション内のそのインデックスを指定することにより、アイテムの削除を迅速に行います。 この細やかなコントロールは、ArrayList を動的データを管理するための強力なツールにしています。

要素の作成と追加

ArrayList を使用し始めるには、まずそのインスタンスを作成する必要があります。 その後、Add メソッドを使用して、ArrayList の末尾にオブジェクトを追加することができます。

using System;
using System.Collections;

class Program
{
    // The main entry point of the program
    public static void Main()
    {
        // Create a new ArrayList
        ArrayList myArrayList = new ArrayList();
        
        // Add elements of different types
        myArrayList.Add("Hello");
        myArrayList.Add(100);
        
        var item = "World";
        myArrayList.Add(item);
        
        // Iterate through the ArrayList and print each element
        foreach (var obj in myArrayList)
        {
            Console.WriteLine(obj);
        }
    }
}

C# ArrayList(開発者向けの仕組み):図1 - ArrayList 出力の作成

この例は、新しい ArrayList を作成し、異なるタイプの要素を追加する方法を示しています。 foreach ループは ArrayList を通じて各要素を反復処理し、プリントします。

要素の挿入

要素を指定されたインデックスに挿入するには、ゼロベースのインデックスシステムであることに注意しながら Insert メソッドを使用します。

// Insert element at index 1
myArrayList.Insert(1, "Inserted Item");

要素の削除

要素を削除するために、Remove と RemoveAt メソッドは役立ちます。 Remove は特定のオブジェクトの最初の出現を削除し、RemoveAt は指定された整数インデックスの要素を削除します。

myArrayList.Remove("Hello"); // Removes the first occurrence of "Hello"
myArrayList.RemoveAt(0);     // Removes the element at index 0

例: ArrayList の管理

C# で ArrayList を使用する高度な例を作成するには、要素の追加や削除のような基本操作だけでなく、ソートや検索、ArrayList を他のデータ構造に変換するなどのより複雑な操作も紹介します。 以下の例を Program.cs ファイルに追加して実行してください。

using System;
using System.Collections;
using System.Linq;

class AdvancedArrayListExample
{
    static void Main(string[] args)
    {
        // Initialize an ArrayList with some elements
        ArrayList numbers = new ArrayList() { 5, 8, 1, 3, 2 };
        
        // Adding elements
        numbers.Add(6); // Add an element to the end
        numbers.AddRange(new int[] { 7, 9, 0 }); // Add multiple elements from a specified collection.
        
        Console.WriteLine("Initial ArrayList:");
        foreach (int number in numbers)
        {
            Console.Write(number + " ");
        }
        Console.WriteLine("\n");

        // Removing elements
        numbers.Remove(1); // Remove the element 1
        numbers.RemoveAt(0); // Remove the first element
        
        Console.WriteLine("After Removal:");
        foreach (int number in numbers)
        {
            Console.Write(number + " ");
        }
        Console.WriteLine("\n");

        // Sorting
        numbers.Sort(); // Sort the ArrayList
        Console.WriteLine("Sorted ArrayList:");
        foreach (int number in numbers)
        {
            Console.Write(number + " ");
        }
        Console.WriteLine("\n");

        // Searching
        int searchFor = 5;
        int index = numbers.IndexOf(searchFor); // Find the index of the element
        if (index != -1)
        {
            Console.WriteLine($"Element {searchFor} found at index {index}");
        }
        else
        {
            Console.WriteLine($"Element {searchFor} not found.");
        }
        Console.WriteLine("\n");

        // Converting ArrayList to Array
        int[] numbersArray = (int[])numbers.ToArray(typeof(int));
        Console.WriteLine("Converted Array:");
        foreach (int number in numbersArray)
        {
            Console.Write(number + " ");
        }
        Console.WriteLine("\n");

        // Demonstrate LINQ with ArrayList (Requires System.Linq)
        var evenNumbers = numbers.Cast<int>().Where(n => n % 2 == 0).ToList(); // Assign values to evenNumbers from the filtered results.
        Console.WriteLine("Even Numbers:");
        evenNumbers.ForEach(n => Console.Write(n + " "));
        Console.WriteLine();
    }
}

このコードスニペットでは以下を示します:

  • 要素のセットを持つ ArrayList を初期化する。
  • ArrayList に単一および複数の要素を追加する。
  • 値およびインデックスで要素を削除する。
  • 要素を順序付けるために ArrayList をソートする。
  • 要素を検索し、そのインデックスを見つける。
  • ArrayList を標準配列に変換する。
  • 非ジェネリックコレクションを LINQ の強力なクエリ機能と連携させる方法を示すために、ArrayList で LINQ を使用して偶数をフィルタリングする。

C# ArrayList(開発者向けの仕組み):図2 - ArrayList 出力

IronPDFの紹介: C# PDFライブラリ

C# ArrayList(開発者向けの仕組み):図3 - IronPDF

IronPDF は C# 用の強力なライブラリで、PDF の生成プロセスを簡素化し、HTML からの PDF 生成、テキストや画像の追加、文書の保護など、多くのPDF操作機能を提供します。

IronPDF と ArrayList の統合

アイテムのArrayListを作成し、それを使用してIronPDFを使用してそれらのアイテムのPDF文書を生成する簡単なC#プログラムを書いてみましょう。

using IronPdf;
using System;
using System.Collections;

class PdfCode
{
    static void Main(string[] args)
    {
        // Set your IronPDF license key here
        IronPdf.License.LicenseKey = "Your_License_Key";
        
        // Create a new ArrayList and add some items
        ArrayList itemList = new ArrayList();
        itemList.Add("Apple");
        itemList.Add("Banana");
        itemList.Add("Cherry");
        itemList.Add("Date");
        
        // Initialize a new PDF document
        var Renderer = new ChromePdfRenderer();
        
        // Create an HTML string to hold our content
        string htmlContent = "<h1>Items List</h1><ul>";
        
        // Iterate over each item in the ArrayList and add it to the HTML string
        foreach (var item in itemList)
        {
            htmlContent += $"<li>{item}</li>";
        }
        htmlContent += "</ul>";
        
        // Convert the HTML string to a PDF document
        var PDF = Renderer.RenderHtmlAsPdf(htmlContent);

        // Save the PDF to a file
        PDF.SaveAs("ItemList.pdf");
        
        Console.WriteLine("PDF file 'ItemList.pdf' has been generated.");
    }
}

この例では、まず itemList という名前の ArrayList を作成し、いくつかの文字列アイテムでそれを埋めます。 次に、IronPDF の ChromePdfRenderer クラスの新しいインスタンスを初期化し、これを使用して HTML コンテンツを PDF 文書に変換します。

出力

IronPDF によって生成された出力 PDF は次のとおりです:

C# ArrayList(開発者向けの仕組み):図4 - PDF 出力

結論

ArrayList はオブジェクトのリストを格納するために C# が提供する強力なコレクションです。 サイズを動的に調整し、任意の型の要素を格納する能力により、広範囲のアプリケーションにとって汎用性があります。 しかし、型の安全性と性能向上のためには、ジェネリックコレクションが推奨されます。 ArrayListとそのメソッドを試すことで、その用途とアプリケーションにどのように適合するかを理解することができます。

さらに、C#の能力をPDF操作に拡張することに関心がある方のために、IronPDFはその機能を探求するために PDF Functions in .NET の無料トライアルを提供します。 ライセンスは$999から始まり、.NETアプリケーションにPDF機能を統合するための包括的なソリューションを提供します。

Jacob Mellor、Ironチームの最高技術責任者(CTO)
最高技術責任者(CTO)

ジェイコブ・メラーはIron Softwareの最高技術責任者(CTO)であり、C# PDFテクノロジーを開拓する先見的なエンジニアです。Iron Softwareのコアコードベースを支えるオリジナル開発者として、彼は創業以来、会社の製品アーキテクチャを形成し、CEOのCameron Rimingtonとともに、会社をNASA、Tesla、および世界的な政府機関にサービスを提供する50人以上の会社に変えました。1999年にロンドンで最初のソフトウェアビジネスを開業し、2005年に最初 for .NETコンポーネントを作成した後、Microsoftのエコシステム全体で複雑な問題を解決することを専門としました。

関連する記事

Key in blue circle

無料の30日間トライアルキーをすぐに入手してください。

Your trial license will be sent to your email address

制限なし。100% ロック解除済み。クレジットカード不要。

OR
bullet_checkedクレジットカードやアカウントの作成は不要です。制限なし。100% ロック解除済み。クレジットカード不要。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
無料のライブデモを予約する
Booking Badge

世界中の数百万人のエンジニアから信頼されています。

ライセンスはより安く
義務のない相談を受ける
下記のフォームを記入するか、sales@ironsoftware.comにメールしてください。
あなたの詳細は常に守秘されます。
世界中の数百万人のエンジニアから信頼されています。
ライセンスはより安く
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。
PDF用C# NuGetライブラリ
NuGetでインストール

バージョン: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. ソリューションエクスプローラーで参照を右クリックし、NuGetパッケージを管理を選択
  2. ブラウズを選択し、"IronPDF"を検索
  3. パッケージを選択してインストール
C# PDF DLL
DLLをダウンロード

バージョン: 2026.9

またはここからWindowsインストーラーをダウンロードする。

  1. IronPDFを~/Libsなどの場所に解凍し、ソリューションディレクトリ内に配置する
  2. Visual Studioソリューションエクスプローラーで参照を右クリックし、"IronPDF.dll"をブラウズして選択

ライセンスは$999から