Handledning för C# ArrayList med exempel
⚡ Smart sammanfattning
ArrayList i C# är en dynamisk samling från namnrymden System.Collections som lagrar element som objekt. Till skillnad från en array växer och krymper den vid körning och kan hålla heltal, strängar och booleska värden tillsammans i en lista.

Vad är ArrayList i C#?
ArrayList-samlingen liknar arrayer datatyp i C#. Den största skillnaden är den dynamiska karaktären hos arraylistsamlingen.
För matriser måste du definiera antalet element som matrisen kan hålla vid tidpunkten för matrisdeklaration. Men i fallet med Array List-samlingen behöver detta inte göras i förväg. Element kan läggas till eller tas bort från samlingen Array List när som helst. Låt oss titta på de operationer som är tillgängliga för arraylistsamlingen mer i detalj.
Deklaration av en matrislista
Deklarationen för en ArrayList finns nedan. En arraylista skapas med hjälp av ArrayList Datatype. Nyckelordet "nya" används för att skapa ett objekt i en ArrayList. Objektet tilldelas sedan variabeln a1. Så nu kommer variabeln a1 att användas för att komma åt de olika elementen i arraylistan.
ArrayList a1 = new ArrayList()
Lägga till element i en array
Add-metoden används för att lägga till ett element i ArrayList. Add-metoden kan användas för att lägga till vilken typ av datatyp som helst till arraylistan. Så du kan lägga till ett heltal eller en sträng eller till och med ett booleskt värde till arraylistan. Den allmänna syntaxen för additionsmetoden ges nedan
ArrayList.add(element)
Nedan finns några exempel på hur metoden ”lägg till” kan användas. Add-metoden kan användas för att lägga till olika datatyper till Array List-samlingen.
Nedan kan du se exempel på hur vi kan lägga till heltals strängar och till och med booleska värden till samlingen Array List.
- a1.add(1) – Detta kommer att lägga till ett heltalsvärde till samlingen
- a1.add(“Exempel”) – Detta kommer att lägga till ett strängvärde till samlingen
- a1.add(true) – Detta kommer att lägga till ett booleskt värde till samlingen
Låt oss nu se att detta fungerar på kodnivå. All ovan nämnda kod kommer att skrivas till vår konsolapplikation. Koden kommer att skrivas till vår Program.cs-fil.
I programmet nedan kommer vi att skriva koden för att skapa en ny arraylista. Vi kommer också att visa för att lägga till element och för att visa elementen i Array-listan.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { ArrayList a1 = new ArrayList(); a1.Add(1); a1.Add("Example"); a1.Add(true); Console.WriteLine(a1[0]); Console.WriteLine(a1[1]); Console.WriteLine(a1[2]); Console.ReadKey(); } } }
Code Förklaring:-
- Det första steget används för att deklarera vår Array List. Här deklarerar vi a1 som en variabel för att hålla elementen i vår arraylista.
- Vi använder sedan nyckelordet add för att lägga till siffran 1 , strängen "Exempel" och det booleska värdet "true" till arraylistan.
- Vi använder sedan Console.WriteLine-metoden för att visa värdet för varje array listelement till konsolen. Du kommer att märka att precis som arrayer kan vi komma åt elementen via deras indexpositioner. Så för att komma åt den första positionen i Array List använder vi [0] indexpositionen. Och så vidare.
Om ovanstående kod anges korrekt och programmet körs kommer följande utdata att visas.
Produktion:
Från utgången kan du se att alla element från arraylistan skickas till konsolen.
Låt oss titta på några fler metoder som är tillgängliga som en del av ArrayList.
Att Räkna
Denna metod används för att få antalet objekt i ArrayList-samlingen. Nedan är den allmänna syntaxen för detta uttalande.
ArrayList.Count() – Denna metod returnerar antalet element som arraylistan innehåller.
innehåller
Denna metod används för att se om ett element finns i ArrayList-samlingen. Nedan är den allmänna syntaxen för detta uttalande
ArrayList.Contains(element) – Den här metoden returnerar true om elementet finns i listan, annars returnerar det false.
Ta bortAt
Denna metod används för att ta bort ett element på en specifik position i ArrayList-samlingen. Nedan är den allmänna syntaxen för detta uttalande
ArrayList.RemoveAt(index) – Denna metod tar bort ett element från en specifik position i Arraylistan.
Låt oss nu se att detta fungerar på kodnivå. All ovan nämnda kod kommer att skrivas till vår konsolapplikation. Koden kommer att skrivas till vår Program.cs-fil.
I programmet nedan kommer vi att skriva koden för att se hur vi kan använda de ovan nämnda metoderna.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { ArrayList a1 = new ArrayList(); a1.Add(1); a1.Add("Example"); a1.Add(true); Console.WriteLine(a1.Count); Console.WriteLine(a1.Contains(2)); Console.WriteLine(a1[1]); a1.RemoveAt(1); Console.WriteLine(a1[1]); Console.ReadKey(); } } }
Code Förklaring:-
- Så den första egenskapen vi ser är Count-egendomen. Vi hämtar egenskapen Count för arraylistan a1 och skriver den sedan till konsolen.
- I den andra delen använder vi metoden Contains för att se om ArrayList a1 innehåller elementet 2. Vi skriver sedan resultatet till konsolen via kommandot Writeline.
- Slutligen, för att visa upp metoden Ta bort element, utför vi stegen nedan,
- Först skriver vi värdet på elementet vid indexposition 1 i arraylistan till konsolen.
- Sedan tar vi bort elementet på indexposition 1 i arraylistan.
- Slutligen skriver vi igen värdet på elementet vid Indexposition 1 i arraylistan till konsolen. Denna uppsättning steg ger en rättvis uppfattning om huruvida borttagningsmetoden kommer att fungera som den ska.
Om ovanstående kod anges korrekt och programmet körs kommer följande utdata att visas.
Produktion:
Varför är det sista värdet sant?
Om du ser händelseförloppet tas elementet Exempel bort från arrayen eftersom detta är på position 1. Position 1 i arrayen ersätts då av det som var i position 2 tidigare med värdet 'true'
Hur man loopar igenom en C# ArrayList
Att läsa varje element i en ArrayList är en vanlig uppgift. Eftersom en ArrayList lagrar sina objekt som objekt kan du besöka dem med en foreach-loop eller med en for-loop som använder Count-egenskapen. Foreach-loopen är det enklaste sättet, eftersom den går igenom varje element i ordning utan att behöva ett index.
Exemplet nedan skapar en ArrayList med strängar och skriver ut varje värde på en egen rad. Koden skrivs i Program.cs-filen i ett konsolprogram.
Steg 1) Importera namnrymden System.Collections och skapa en ArrayList med tre objekt.
Steg 2) Använd en foreach-loop för att läsa varje element som ett objekt och skriva det till konsolen.
using System; using System.Collections; namespace DemoApplication { class Program { static void Main(string[] args) { ArrayList a1 = new ArrayList(); a1.Add("Java"); a1.Add("Python"); a1.Add("Kotlin"); foreach (object item in a1) { Console.WriteLine(item); } Console.ReadKey(); } } }
Code Förklaring:-
- Namnrymden System.Collections importeras så att ArrayList-typen är tillgänglig för programmet.
- Tre strängvärden läggs till i ArrayList med Add-metoden.
- Foreach-loopen läser varje objekt som ett objekt, och Console.WriteLine-metoden skriver ut det på en ny rad.
När programmet körs skriver det ut Java, Pythonoch Kotlin på separata rader. En for-loop med egenskapen Count skulle ge samma resultat samtidigt som du låter dig använda indexpositionen för varje element.
C# ArrayList-metoder och egenskaper
ArrayList-klassen har många inbyggda metoder och egenskaper för att hantera dess element. Förutom att lägga till och ta bort objekt kan den sortera, söka och vända samlingen. De vanligaste medlemmarna listas nedan.
| Medlem | BESKRIVNING |
| Lägg till | Lägger till ett enda element i slutet av ArrayList. |
| Insert | Lägger till ett element på en specifik indexposition. |
| ta bort | Tar bort den första förekomsten av ett specifikt element. |
| Ta bortAt | Tar bort elementet vid den givna indexpositionen. |
| Rensa | Tar bort alla element från ArrayList. |
| Svart | Sorterar elementen i stigande ordning. |
| Reverse | Reverses ordningen på elementen i listan. |
| innehåller | Returnerar sant om ett givet element finns i listan. |
| IndexOf | Returnerar indexpositionen för ett givet element. |
| Att Räkna | Egenskap som returnerar antalet lagrade element. |
| Kapacitet | Egenskap som returnerar antalet element som listan kan innehålla. |
Dessa medlemmar låter dig lägga till, hitta, ordna och ta bort objekt utan att behöva skriva logiken själv, vilket är en av de största fördelarna med att använda en samling jämfört med en vanlig array.
Skillnaden mellan ArrayList och List i C#
Både en ArrayList och en generisk Lista lagra en grupp objekt som kan växa vid körning, men de skiljer sig åt i hur de hanterar typer. Att känna till skillnaden hjälper dig att välja rätt för modern C#-kod.
De viktigaste skillnaderna listas nedan:
- Typ säkerhet: En ArrayList lagrar varje objekt som ett objekt, medan en List är bunden till en deklarerad typ och kontrolleras vid kompileringstid.
- Prestanda: En ArrayList boxas och avboxas värdetyper som int, vilket kostar tid, medan en List undviker boxning för bättre hastighet.
- Namnrymd: ArrayList finns i System.Collections, medan List finns i System.Collections.Generic.
- gjutning: Att läsa från en ArrayList kräver ofta en återgång till den ursprungliga typen, men en List returnerar rätt typ direkt.
- Rekommendation: Microsoft rekommenderar List för nyutveckling eftersom den är säkrare, snabbare och lättare att läsa.
Kort sagt, en ArrayList är användbar för att förstå äldre kod eller blandad lagring, medan en List är det föredragna valet för de flesta applikationer idag.




