在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
ArrayList 類別是 .NET Framework 集合命名空間的一部分,設計用來儲存一個物件集合。它是一個非泛型集合,這意味著它可以包含任何資料類型的項目。這一特性使其具有高度的靈活性,但相比於泛型集合,型別安全性較低。 陣列列表 可以包含重複的元素,並允許隨著有效值的添加或移除而動態調整大小。在本文中,我們將討論 ArrayList 的基礎知識和 IronPDF 圖書館
ArrayList 本質上是一個非泛型集合,能夠存儲任意數據類型的多個元素,使其在各種編程場景中都能成為靈活的選擇。能夠隨意添加或移除元素而不受固定大小限制是它的一個主要特性。ArrayList 會自動調整其大小以適應新元素,這一功能是通過其實現的 IList 介面實現的。這種動態調整大小對於需要在其生命周期內包含不同數量元素的應用程序至關重要。
當您實例化一個 ArrayList 時,您正在創建一個可以存放任何對象值的集合,從整數和字符串到複雜的自定義對象。由於 Add 方法可以將對象值追加到集合的末尾,以及 Insert 方法可以在指定索引處插入新項目,必要時會移動現有元素來騰出空間,向 ArrayList 添加元素變得很簡單。這種靈活性允許開發人員更有效地管理集合,適應應用的發展需求。
向 ArrayList 中添加元素是簡單而直觀的。例如,假設您正在構建一個包含各種類型數據的集合。使用 Add 方法,您可以將任何對象附加到 ArrayList 中,從字符串到整數,甚至是其他集合。ArrayList 的容量會根據需要自動增加,確保總是有空間容納新的物件元素。這種自動調整大小的特性,顯著優於必須手動調整大小或創建新陣列以容納更多元素的傳統陣列。
ArrayList 還提供了在特定位置插入和移除元素的方法。Insert 方法允許您在指定位置添加元素,有效地使您能夠在集合中精確地將新項目放置在任何指定的索引處。同樣地,Remove 和 RemoveAt 方法使項目的刪除變得更加容易,可以通過指定要刪除的對象或其在集合中的索引來實現。對 ArrayList 中元素的這種精細控制,使其成為管理動態數據的強大工具。
要開始使用 ArrayList,您首先需要創建一個實例。然後,您可以使用 Add 方法將元素添加到 ArrayList 中,該方法會在 ArrayList 的末尾插入一個對象。
class Program
{
// public static void main
public static void Main()
{
ArrayList myArrayList = new ArrayList();
myArrayList.Add("Hello");
myArrayList.Add(100);
var item = "World";
myArrayList.Add(item);
foreach (var obj in myArrayList)
{
Console.WriteLine(obj);
}
}
}
class Program
{
// public static void main
public static void Main()
{
ArrayList myArrayList = new ArrayList();
myArrayList.Add("Hello");
myArrayList.Add(100);
var item = "World";
myArrayList.Add(item);
foreach (var obj in myArrayList)
{
Console.WriteLine(obj);
}
}
}
Friend Class Program
' public static void main
Public Shared Sub Main()
Dim myArrayList As New ArrayList()
myArrayList.Add("Hello")
myArrayList.Add(100)
Dim item = "World"
myArrayList.Add(item)
For Each obj In myArrayList
Console.WriteLine(obj)
Next obj
End Sub
End Class
此示例演示了如何创建一个新的 ArrayList 并向其中添加不同类型的元素。foreach 循环接着遍历 ArrayList,打印每个元素。
要在指定索引處插入元素,請使用 Insert 方法,注意這是一個從零開始的索引系統。
myArrayList.Insert(1, "Inserted Item");
myArrayList.Insert(1, "Inserted Item");
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
myArrayList.Remove("Hello"); // Removes the first occurrence of "Hello"
myArrayList.RemoveAt(0); // Removes the element at index 0
myArrayList.Remove("Hello") ' Removes the first occurrence of "Hello"
myArrayList.RemoveAt(0) ' Removes the element at index 0
在 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();
}
}
Imports Microsoft.VisualBasic
Imports System
Imports System.Collections
Imports System.Linq
Friend Class AdvancedArrayListExample
Shared Sub Main(ByVal args() As String)
' Initialize an ArrayList with some elements
Dim numbers As New ArrayList() From { 5, 8, 1, 3, 2 }
' Adding elements
numbers.Add(6) ' Add an element to the end
numbers.AddRange(New Integer () { 7, 9, 0 }) ' Add multiple elements from a specified collection.
Console.WriteLine("Initial ArrayList:")
For Each number As Integer In numbers
Console.Write(number & " ")
Next number
Console.WriteLine(vbLf)
' Removing elements
numbers.Remove(1) ' Remove the element 1
numbers.RemoveAt(0) ' Remove the first element
Console.WriteLine("After Removal:")
For Each number As Integer In numbers
Console.Write(number & " ")
Next number
Console.WriteLine(vbLf)
' Sorting
numbers.Sort() ' Sort the ArrayList
Console.WriteLine("Sorted ArrayList:")
For Each number As Integer In numbers
Console.Write(number & " ")
Next number
Console.WriteLine(vbLf)
' Searching
Dim searchFor As Integer = 5
Dim index As Integer = numbers.IndexOf(searchFor) ' Find the index of the element
If index <> -1 Then
Console.WriteLine($"Element {searchFor} found at index {index}")
Else
Console.WriteLine($"Element {searchFor} not found.")
End If
Console.WriteLine(vbLf)
' Converting ArrayList to Array
Dim numbersArray() As Integer = DirectCast(numbers.ToArray(GetType(Integer)), Integer ())
Console.WriteLine("Converted Array:")
For Each number As Integer In numbersArray
Console.Write(number & " ")
Next number
Console.WriteLine(vbLf)
' Demonstrate LINQ with ArrayList (Requires System.Linq)
Dim evenNumbers = numbers.Cast(Of Integer)().Where(Function(n) n Mod 2 = 0).ToList() ' Assign values to evenNumbers from the filtered results.
Console.WriteLine("Even Numbers:")
evenNumbers.ForEach(Sub(n) Console.Write(n & " "))
Console.WriteLine()
End Sub
End Class
本代碼片段示範如何:
IronPDF 是一個強大的 C# 庫,簡化了 PDF 生成的複雜過程,提供了廣泛的 PDF 操作功能,包括生成的能力。 從 HTML 生成 PDF添加文字和圖片、保護文件及更多功能。
讓我們編寫一個簡單的 C# 程式,創建一個ArrayList項目,然後使用 IronPDF 生成一個列出這些項目的 PDF 文件。
using IronPdf;
using System;
using System.Collections;
class pdfocde
{
static void Main(string [] args)
{
IronPdf.License.LicenseKey = "License";
// 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("e:\\ItemList.pdf");
Console.WriteLine("PDF file 'ItemList.pdf' has been generated.");
}
}
using IronPdf;
using System;
using System.Collections;
class pdfocde
{
static void Main(string [] args)
{
IronPdf.License.LicenseKey = "License";
// 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("e:\\ItemList.pdf");
Console.WriteLine("PDF file 'ItemList.pdf' has been generated.");
}
}
Imports IronPdf
Imports System
Imports System.Collections
Friend Class pdfocde
Shared Sub Main(ByVal args() As String)
IronPdf.License.LicenseKey = "License"
' Create a new ArrayList and add some items
Dim itemList As New ArrayList()
itemList.Add("Apple")
itemList.Add("Banana")
itemList.Add("Cherry")
itemList.Add("Date")
' Initialize a new PDF document
Dim Renderer = New ChromePdfRenderer()
' Create an HTML string to hold our content
Dim htmlContent As String = "<h1>Items List</h1><ul>"
' Iterate over each item in the ArrayList and add it to the HTML string
For Each item In itemList
htmlContent &= $"<li>{item}</li>"
Next item
htmlContent &= "</ul>"
' Convert the HTML string to a PDF document
Dim PDF = Renderer.RenderHtmlAsPdf(htmlContent)
' Save the PDF to a file
PDF.SaveAs("e:\ItemList.pdf")
Console.WriteLine("PDF file 'ItemList.pdf' has been generated.")
End Sub
End Class
在這個例子中,我們首先建立一個名為 itemList 的 ArrayList 並將其填入幾個字串項目。接下來,我們初始化一個新的 IronPDF 的 ChromePdfRenderer 類的新實例,我們將用它來將 HTML 內容轉換為 PDF 文件。
這是由 IronPDF 生成的輸出 PDF:
ArrayList 是 C# 提供的一個強大集合,用於儲存物件列表。它能夠動態調整大小並儲存任何類型的元素,使其在各種應用中都顯得非常靈活。然而,為了類型安全和更好的效能,建議使用泛型集合。嘗試使用 ArrayList 及其方法,將有助於你理解其用途以及如何將其應用到你的項目中。
另外,對於那些有興趣將 C# 能力擴展到 PDF 操作的人,目前 IronPDF 提供... 免費試用 探索其功能。許可證從 $749 起,提供將 PDF 功能集成到 .NET 應用程式中的綜合解決方案。