Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Listmetoder | Datastrukturer och Filhantering
C# Bortom Grunderna

bookListmetoder

I detta kapitel kommer vi att titta på några användbara listmetoder.

Remove()

Metoden Remove tar bort den första förekomsten av ett element från en lista.

Syntax:

exampleList.remove(targetElement);
index.cs

index.cs

copy
123456789101112131415161718192021222324252627
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<string> fruits = new List<string> { "Apple", "Banana", "Orange", "Banana", "Grape" }; Console.Write("Before: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } fruits.Remove("Banana"); Console.Write("\nAfter: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } } } }

Om inget sådant element hittas, utförs ingen åtgärd.

index.cs

index.cs

copy
123456789101112131415161718192021222324252627
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<string> fruits = new List<string> { "Apple", "Banana", "Orange", "Banana", "Grape" }; Console.Write("Before: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } fruits.Remove("some element"); // trying to remove an unknown element Console.Write("\nAfter: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } } } }

RemoveAt()

Metoden RemoveAt tar bort ett element på en specifik index.

Syntax:

exampleList.RemoveAt(index);
index.cs

index.cs

copy
123456789101112131415161718192021222324252627
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<string> fruits = new List<string> { "Apple", "Orange", "Banana", "Grape" }; Console.Write("Before: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } fruits.RemoveAt(1); Console.Write("\nAfter: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } } } }

Clear

Metoden Clear tar bort alla element från en lista. Den tar inga argument.

Syntax:

exampleList.Clear();
index.cs

index.cs

copy
123456789101112131415161718192021222324252627
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<string> fruits = new List<string> { "Apple", "Orange", "Banana", "Grape" }; Console.Write("Before: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } fruits.Clear(); Console.Write("\nAfter: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } } } }

Insert

Metoden Insert infogar ett element i listan på ett angivet index.

Syntax:

exampleList.Insert(index, elementToInsert);
index.cs

index.cs

copy
1234567891011121314151617181920212223
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<int> numbers = new List<int> { 2, 4, 6, 10, 12 }; Console.Write("Before: "); foreach (int number in numbers) Console.Write(number + " "); numbers.Insert(3, 8); Console.Write("\nAfter: "); foreach (int number in numbers) Console.Write(number + " "); } } }

Vi kan utelämna klammerparenteser {} om det endast finns ett enda uttryck inuti en if-sats, en for-loop eller en foreach-loop.

index.cs

index.cs

copy
123
foreach(int number in numbers) { Console.Write(number + " "); }

Ovanstående kodsnutt är densamma som:

index.cs

index.cs

copy
12
foreach(int number in numbers) Console.Write(number + " ");

Om det redan finns ett element på den angivna indexpositionen, skjuts det åt höger, liksom de återstående elementen i arrayen efter det – om det finns några. Följande diagram illustrerar processen:

Contains()

Metoden Contains kontrollerar om en lista innehåller ett specifikt element. Den returnerar ett booleskt värde (true eller false).

Syntax: exampleList.Contains(element);

index.cs

index.cs

copy
1234567891011121314
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<char> vowels = new List<char> { 'a', 'e', 'i', 'o', 'u' }; Console.WriteLine("Contains 'o': " + vowels.Contains('o')); } } }

IndexOf()

Metoden IndexOf returnerar indexet för första förekomsten av ett element i en lista.

Syntax: exampleList.IndexOf(element);

index.cs

index.cs

copy
123456789101112131415
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<char> vowels = new List<char> { 'a', 'e', 'i', 'o', 'u' }; vowels.Remove('o'); Console.WriteLine("Index of 'o': " + vowels.IndexOf('o')); } } }

Om elementet inte finns i listan returneras helt enkelt -1:

indexOf-metoden är särskilt användbar när du vill komma åt ett element via dess index men inte känner till indexet. I vowels vill du komma åt elementet o via index och ändra det till versalt O:

index.cs

index.cs

copy
12345678910111213141516171819
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<char> vowels = new List<char> { 'a', 'e', 'i', 'o', 'u' }; int targetIndex = vowels.IndexOf('o'); Console.WriteLine(vowels[targetIndex]); vowels[targetIndex] = 'O'; Console.WriteLine(vowels[targetIndex]); } } }

1. Vad gör metoden Remove()?

2. Vilket är det snabbaste sättet att kontrollera om en lista innehåller ett specifikt element?

3. Vilken metod används för att ta bort alla element från en lista?

4. Vad blir utmatningen av följande kod?

question mark

Vad gör metoden Remove()?

Select the correct answer

question mark

Vilket är det snabbaste sättet att kontrollera om en lista innehåller ett specifikt element?

Select the correct answer

question mark

Vilken metod används för att ta bort alla element från en lista?

Select the correct answer

question mark

Vad blir utmatningen av följande kod?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 1. Kapitel 3

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Suggested prompts:

Can you give examples of how to use these list methods?

What happens if I try to remove an element that isn't in the list?

Can you explain the difference between Remove and RemoveAt?

Awesome!

Completion rate improved to 2.04

bookListmetoder

Svep för att visa menyn

I detta kapitel kommer vi att titta på några användbara listmetoder.

Remove()

Metoden Remove tar bort den första förekomsten av ett element från en lista.

Syntax:

exampleList.remove(targetElement);
index.cs

index.cs

copy
123456789101112131415161718192021222324252627
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<string> fruits = new List<string> { "Apple", "Banana", "Orange", "Banana", "Grape" }; Console.Write("Before: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } fruits.Remove("Banana"); Console.Write("\nAfter: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } } } }

Om inget sådant element hittas, utförs ingen åtgärd.

index.cs

index.cs

copy
123456789101112131415161718192021222324252627
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<string> fruits = new List<string> { "Apple", "Banana", "Orange", "Banana", "Grape" }; Console.Write("Before: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } fruits.Remove("some element"); // trying to remove an unknown element Console.Write("\nAfter: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } } } }

RemoveAt()

Metoden RemoveAt tar bort ett element på en specifik index.

Syntax:

exampleList.RemoveAt(index);
index.cs

index.cs

copy
123456789101112131415161718192021222324252627
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<string> fruits = new List<string> { "Apple", "Orange", "Banana", "Grape" }; Console.Write("Before: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } fruits.RemoveAt(1); Console.Write("\nAfter: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } } } }

Clear

Metoden Clear tar bort alla element från en lista. Den tar inga argument.

Syntax:

exampleList.Clear();
index.cs

index.cs

copy
123456789101112131415161718192021222324252627
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<string> fruits = new List<string> { "Apple", "Orange", "Banana", "Grape" }; Console.Write("Before: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } fruits.Clear(); Console.Write("\nAfter: "); foreach (string fruit in fruits) { Console.Write(fruit + " "); } } } }

Insert

Metoden Insert infogar ett element i listan på ett angivet index.

Syntax:

exampleList.Insert(index, elementToInsert);
index.cs

index.cs

copy
1234567891011121314151617181920212223
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<int> numbers = new List<int> { 2, 4, 6, 10, 12 }; Console.Write("Before: "); foreach (int number in numbers) Console.Write(number + " "); numbers.Insert(3, 8); Console.Write("\nAfter: "); foreach (int number in numbers) Console.Write(number + " "); } } }

Vi kan utelämna klammerparenteser {} om det endast finns ett enda uttryck inuti en if-sats, en for-loop eller en foreach-loop.

index.cs

index.cs

copy
123
foreach(int number in numbers) { Console.Write(number + " "); }

Ovanstående kodsnutt är densamma som:

index.cs

index.cs

copy
12
foreach(int number in numbers) Console.Write(number + " ");

Om det redan finns ett element på den angivna indexpositionen, skjuts det åt höger, liksom de återstående elementen i arrayen efter det – om det finns några. Följande diagram illustrerar processen:

Contains()

Metoden Contains kontrollerar om en lista innehåller ett specifikt element. Den returnerar ett booleskt värde (true eller false).

Syntax: exampleList.Contains(element);

index.cs

index.cs

copy
1234567891011121314
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<char> vowels = new List<char> { 'a', 'e', 'i', 'o', 'u' }; Console.WriteLine("Contains 'o': " + vowels.Contains('o')); } } }

IndexOf()

Metoden IndexOf returnerar indexet för första förekomsten av ett element i en lista.

Syntax: exampleList.IndexOf(element);

index.cs

index.cs

copy
123456789101112131415
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<char> vowels = new List<char> { 'a', 'e', 'i', 'o', 'u' }; vowels.Remove('o'); Console.WriteLine("Index of 'o': " + vowels.IndexOf('o')); } } }

Om elementet inte finns i listan returneras helt enkelt -1:

indexOf-metoden är särskilt användbar när du vill komma åt ett element via dess index men inte känner till indexet. I vowels vill du komma åt elementet o via index och ändra det till versalt O:

index.cs

index.cs

copy
12345678910111213141516171819
using System; using System.Collections.Generic; namespace ConsoleApp { class Program { static void Main(string[] args) { List<char> vowels = new List<char> { 'a', 'e', 'i', 'o', 'u' }; int targetIndex = vowels.IndexOf('o'); Console.WriteLine(vowels[targetIndex]); vowels[targetIndex] = 'O'; Console.WriteLine(vowels[targetIndex]); } } }

1. Vad gör metoden Remove()?

2. Vilket är det snabbaste sättet att kontrollera om en lista innehåller ett specifikt element?

3. Vilken metod används för att ta bort alla element från en lista?

4. Vad blir utmatningen av följande kod?

question mark

Vad gör metoden Remove()?

Select the correct answer

question mark

Vilket är det snabbaste sättet att kontrollera om en lista innehåller ett specifikt element?

Select the correct answer

question mark

Vilken metod används för att ta bort alla element från en lista?

Select the correct answer

question mark

Vad blir utmatningen av följande kod?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 1. Kapitel 3
some-alt