C# ArrayList (Geliştiriciler İçin Nasıl Çalışır)
ArrayList sınıfı, .NET Framework'ün koleksiyonlar ad alanının bir parçasıdır ve bir nesne koleksiyonunu depolamak üzere tasarlanmıştır. Tür tanımlayıcı olmayan bir koleksiyondur, yani herhangi bir veri türünden elemanları barındırabilir. Bu özellik, onu son derece esnek kılar ama jenerik koleksiyonlara kıyasla daha az tür güvenlidir. ArrayList tekrarlı elemanlar içerebilir ve geçerli bir değer eklendiğinde veya çıkartıldığında dinamik olarak yeniden boyutlandırmaya izin verir. Bu makalede ArrayList ve IronPDF Kütüphane Özelliklerini ele alacağız.
ArrayList'in Temelleri
ArrayList temelde, herhangi bir veri türünden bir dizi eleman depolayabilen, tür tanımlayıcı olmayan bir koleksiyondur; bu da onu çeşitli programlama senaryoları için çok yönlü bir tercih yapar. Sabit bir boyutun kısıtlamaları olmadan eleman eklemek veya çıkarmak yeteneği, en önemli özelliklerinden biridir. ArrayList, IList arabirimini uygulayarak yeni elemanlar eklendikçe boyutunu otomatik olarak ayarlayabilir. Bu dinamik yeniden boyutlandırma, ömürleri boyunca değişken sayıda eleman içeren koleksiyonlar gerektiren uygulamalar için kritiktir.
Bir ArrayList örneği oluşturduğunuzda, sayılardan ve dizgilerden karmaşık özel nesnelere kadar herhangi bir değer türünü içerebilecek bir koleksiyon oluşturuyorsunuz demektir. Eleman eklemek, Add gibi metodlar sayesinde oldukça kolaydır; koleksiyonun sonuna bir nesne değeri ekler ve Insert, belirli bir indeks konumunda yeni bir eleман yerleştirerek mevcut elemanları gerektiği gibi yer açacak şekilde kaydırır. Bu esneklik, geliştiricilerin uygulamanın gelişimine ayak uydurarak koleksiyonları daha etkili bir şekilde yönetmelerini sağlar.
Elemanlarla Çalışmak
Bir ArrayList'e eleman eklemek basit ve sezgiseldir. Mesela, çeşitli veri türlerinden oluşan bir koleksiyon oluşturduğunuz bir durumu düşünün. Add metodu ile dizilerden tam sayılara veya başka koleksiyonlara kadar her türlü nesneyi ArrayList'inize ekleyebilirsiniz. ArrayList'ın kapasitesi gerektiğinde otomatik olarak artırılır, her zaman yeni nesne elemanlar için yer olduğundan emin olur. Bu otomatik yeniden boyutlandırma, geleneksel dizilere göre önemli bir avantajdır; çünkü geleneksel diziler, daha fazla eleman için ya manuel yeniden boyutlandırmaya ya da yeni bir dizi oluşturmaya ihtiyaç duyar.
ArrayList belirli pozisyonlarda veya int index'e göre eleman ekleme ve çıkarma metodlarını da sunar. Insert metodu, belirlenen pozisyonda bir eleman eklemenize izin verir ve bu, koleksiyona hangi indexe yerleştirileceğine karar vererek yeni bir eleman ekleme olanağı sağlar. Benzer şekilde, Remove ve RemoveAt metodları, koleksiyon içerisindeki kaldırılacak nesneyi veya indeksini belirtirerek elemanların silinmesine olanak tanır. ArrayList içindeki elemanlar üzerindeki bu detaylı kontrol, dinamik verileri yönetmek için güçlü bir araç haline gelir.
Elemanlar Oluşturma ve Ekleme
ArrayList kullanmaya başlamak için, önce bir örneğini oluşturmanız gerekir. Daha sonra Add metodunu kullanarak bir nesneyi ArrayList'in sonuna ekleyebilirsiniz.
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);
}
}
}
Imports System
Imports System.Collections
Friend Class Program
' The main entry point of the program
Public Shared Sub Main()
' Create a new ArrayList
Dim myArrayList As New ArrayList()
' Add elements of different types
myArrayList.Add("Hello")
myArrayList.Add(100)
Dim item = "World"
myArrayList.Add(item)
' Iterate through the ArrayList and print each element
For Each obj In myArrayList
Console.WriteLine(obj)
Next obj
End Sub
End Class

Bu örnek, yeni bir ArrayList oluşturmayı ve ona farklı türlerde elemanlar eklemeyi göstermektedir. Daha sonra foreach döngüsü ArrayList'i dolaşır ve her elemanı yazdırır.
Eleman Ekleme
Sıfır tabanlı bir dizin sistemi olduğunu göz önünde bulundurarak, belirli bir dizinde eleman eklemek için Insert metodunu kullanın.
// Insert element at index 1
myArrayList.Insert(1, "Inserted Item");
// Insert element at index 1
myArrayList.Insert(1, "Inserted Item");
' Insert element at index 1
myArrayList.Insert(1, "Inserted Item")
Eleman Silme
Elemanları silmek için, Remove ve RemoveAt metodları kullanışlıdır. Remove, belirli bir nesnenin ilk görüldüğü durumu siler, RemoveAt ise belirli bir tam sayı indeksindeki elemanı kaldırır.
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
Örnek: ArrayList Yönetimi
C# içinde ArrayList kullanmanın gelişmiş bir örneğini oluşturmak, eleman ekleme veya silme gibi temel işlemleri değil, aynı zamanda ArrayList'i sıralama, arama ve başka veri yapılarıyla dönüştürme gibi daha karmaşık işlemleri de göstermeyi içerir. Program.cs dosyasına şu örneği yerleştirin ve çalıştırın:
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
Bu kod parçası nasıl yapılacağını gösterir:
- Bir dizi elemanla ArrayList başlatma.
- ArrayList'e tekil ve birden çok eleman ekleme.
- Elemanları değerleri ve indiskleri ile silme.
- ArrayList'i sıralama.
- Bir elemanı arama ve indeksini bulma.
- ArrayList'i bir standart diziye dönüştürme.
- Jenerik olmayan koleksiyonların LINQ'un güçlü sorgu yetenekleriyle köprülenmesini gösteren, ArrayList ile LINQ kullanarak çift sayıları filtreleme.

IronPDF Tanıtımı: C# PDF Kütüphanesi

IronPDF, HTML'den PDF oluşturma, metin ve resim ekleme, belgeleri güvenli hale getirme ve çok daha fazlası dahil olmak üzere PDF işlemleri için geniş bir özellik yelpazesi sunarak, karmaşık PDF oluşturma işlemini kolaylaştıran güçlü bir C# kütüphanesidir.
IronPDF'in ArrayList ile Entegrasyonu
Bir ArrayList ve ardından IronPDF kullanarak öğeleri listeleyen bir PDF belgesi oluşturacak olan basit bir C# programı yazalım.
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.");
}
}
Imports IronPdf
Imports System
Imports System.Collections
Friend Class PdfCode
Shared Sub Main(ByVal args() As String)
' Set your IronPDF license key here
IronPdf.License.LicenseKey = "Your_License_Key"
' 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("ItemList.pdf")
Console.WriteLine("PDF file 'ItemList.pdf' has been generated.")
End Sub
End Class
Bu örnekte, itemList adında bir ArrayList oluşturarak birkaç dize elemanla doldurarak başlıyoruz. Sonra, HTML içeriğini bir PDF belgesine dönüştüreceğimiz IronPDF'in yeni bir ChromePdfRenderer sınıf örneğini başlatırız.
Çıktı
İşte IronPDF tarafından oluşturulan çıktı PDF:

Sonuç

ArrayList, C# tarafından sunulan, bir nesne listesini depolamak için güçlü bir koleksiyondur. Tür tanımlayıcı olmayan bir koleksiyon olması ve dinamik boyut ayarlayabilme yeteneğiyle, geniş bir uygulama yelpazesi için çok yönlüdür. Ancak, tür güvenliği ve daha iyi performans için jenerik koleksiyonlar önerilir. ArrayList ve metodları üzerinde deney yapmak, kullanımını anlamanızı ve uygulamalarınıza nasıl uyabileceğini öğrenmenizi sağlar.
Ayrıca, C# yeteneklerini PDF işlemlerine genişletmek isteyenler için IronPDF, özelliklerini keşfetmek için .NET için PDF İşlevleri Ücretsiz Deneme sunar. Lisanslar $799'dan başlar ve .NET uygulamalarına PDF işlemleri entegre etmek için kapsamlı bir çözüm sunar.
Sıkça Sorulan Sorular
Bir ArrayList'i C#'ta PDF'ye nasıl dönüştürebilirim?
IronPDF'i kullanarak C#'ta bir ArrayList'ten PDF üretebilirsiniz. ArrayList üzerinde iterasyon yaparak, içeriği PDF oluşturmaya uygun bir formata derleyin ve ardından IronPDF'in yöntemlerini kullanarak PDF'yi oluşturup kaydedin.
IronPDF'i ArrayList'lerle kullanmanın faydaları nelerdir?
ArrayList'lerde depolanan verileri PDF belgelerine kolayca dönüştürmenizi sağlar. Bu, minimal kod ve maksimum verimlilikle raporlar oluşturmak veya öğe listelerini dışa aktarmak için kullanışlıdır.
ArrayList'ten oluşturulan bir PDF'ye metin ve resimler ekleyebilir miyim?
Evet, IronPDF ile bir ArrayList'teki öğeler üzerinde iterasyon yaparken metin, resim ve diğer içerikleri ekleyerek PDF'nizi özelleştirebilirsiniz.
C#'ta bir ArrayList'ten üretilen bir PDF güvence altına alınabilir mi?
IronPDF, PDF belgelerinizi güvence altına almak için özellikler sunar. ArrayList'ten üretilen PDF'lerin erişimini ve düzenlenmesini kısıtlamak için şifreler ve izinler ayarlayabilirsiniz.
Dinamik boyutlandırma, PDF kütüphaneleriyle entegrasyonda ArrayList'e nasıl fayda sağlar?
Bir ArrayList'in dinamik boyutlandırılması, kapasitesi hakkında endişelenmeden öğeler ekleyip kaldırmanıza olanak tanır. Bu esneklik, IronPDF gibi kütüphaneler kullanarak PDF oluşturma için veri hazırlandığında faydalıdır.
C# geliştiricileri için IronPDF kullanmanın avantajı nedir?
IronPDF, C# geliştiricilerine PDF belgeleri oluşturma ve manipüle etme için sağlam bir araç seti sunar. HTML’den PDF’ye dönüştürme, açıklama ekleme ve birden fazla PDF'yi birleştirme gibi çeşitli özellikleri destekleyerek .NET uygulamaları için temel bir kütüphane haline gelir.
ArrayList'teki farklı veri türlerini PDF oluştururken nasıl ele alabilirim?
ArrayList, her türlü veri türünü depolayabildiğinden, IronPDF’i kullanarak bu çeşitli veri türlerini tutarlı bir PDF belgesine dönüştürmek ve biçimlendirmek için ArrayList'te iterasyon yapıp gerekli dönüşümleri uygulayabilirsiniz.
ArrayList'lerle IronPDF kullanırken bazı sorun giderme ipuçları nelerdir?
PDF dönüştürmeden önce ArrayList'teki verilerinizin doğru biçimde olduğundan emin olun. Null değerlerini ve uyumsuz veri türlerini kontrol edin ve PDF oluşturma süreci sırasında ortaya çıkan sorunları belirlemek ve çözmek için IronPDF hata ayıklama araçlarını kullanın.




