C# ArrayList(開発者向けの動作方法)
.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);
}
}
}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);
}
}
}
この例は、新しい ArrayList を作成し、異なるタイプの要素を追加する方法を示しています。 foreach ループは ArrayList を通じて各要素を反復処理し、プリントします。
要素の挿入
要素を指定されたインデックスに挿入するには、ゼロベースのインデックスシステムであることに注意しながら Insert メソッドを使用します。
// Insert element at index 1
myArrayList.Insert(1, "Inserted Item");// 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 0myArrayList.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();
}
}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 を使用して偶数をフィルタリングする。

イントロダクション: IronPDF - C# PDF ライブラリ

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.");
}
}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 は次のとおりです:

結論

ArrayList はオブジェクトのリストを格納するために C# が提供する強力なコレクションです。 サイズを動的に調整し、任意の型の要素を格納する能力により、広範囲のアプリケーションにとって汎用性があります。 しかし、型の安全性と性能向上のためには、ジェネリックコレクションが推奨されます。 ArrayListとそのメソッドを試すことで、その用途とアプリケーションにどのように適合するかを理解することができます。
さらに、C#の能力をPDF操作に拡張することに関心がある方のために、IronPDFはその機能を探求するために PDF Functions in .NET の無料トライアルを提供します。 ライセンスは $799 から始まり、.NETアプリケーションにPDF機能を統合するための包括的なソリューションを提供します。
よくある質問
C#でArrayListをPDFに変換する方法は?
C#でArrayListからPDFを生成するには、IronPDFを使用できます。ArrayListを反復して、PDF生成に適した形式に内容をコンパイルし、その後IronPDFのメソッドを使用してPDFを作成し保存します。
ArrayListを使用する際のIronPDFの利点は何ですか?
IronPDFを使用すると、開発者はArrayListに格納されたデータを簡単にPDFドキュメントに変換できます。これは、最小限のコードで最大限の効率を持って、レポートを作成したり、アイテムのリストをエクスポートしたりするのに役立ちます。
ArrayListから生成されたPDFにテキストと画像を追加できますか?
はい、IronPDFを使用すると、ArrayList内のアイテムを反復しながら、テキスト、画像、その他のコンテンツを追加してPDFをカスタマイズできます。
C#でArrayListから生成されたPDFを保護することは可能ですか?
IronPDFはPDFドキュメントを保護する機能を提供します。ArrayListのデータから生成されたPDFのアクセスや編集を制限するために、パスワードや権限を設定できます。
PDFライブラリと統合する際にArrayListの動的リサイズがどのように役立つのか?
ArrayListの動的リサイズにより、容量を気にせずに必要に応じて要素を追加または削除できます。この柔軟性は、IronPDFのようなライブラリを使用してPDFを生成する際にデータを準備する際に有用です。
C#開発者にとってIronPDFを使用する利点は何ですか?
IronPDFはC#開発者にPDFドキュメントを生成し操作するための強力なツールセットを提供します。HTMLからPDFへの変換、注釈の追加、複数のPDFのマージなど、さまざまな機能をサポートしており、.NETアプリケーションにとって不可欠なライブラリです。
PDFを作成する際に、ArrayListで異なるデータ型をどのように処理できますか?
ArrayListは任意のデータ型を格納できるため、IronPDFを使用してこれらの多様なデータ型を反復し、必要な変換を適用して一貫性のあるPDFドキュメントにフォーマットおよび変換できます。
ArrayListを使用したIronPDFのトラブルシューティングのヒントは?
PDFに変換する前にArrayList内のデータが正しくフォーマットされていることを確認してください。null値や互換性のないデータ型をチェックし、IronPDFのデバッグツールを使用して、PDF生成プロセス中に発生した問題を特定し、解決してください。








