Metodi delle Liste
In questo capitolo esamineremo alcuni metodi utili delle liste.
Remove()
Il metodo Remove
rimuove la prima occorrenza di un elemento da una lista.
Sintassi:
exampleList.remove(targetElement);
index.cs
123456789101112131415161718192021222324252627using 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 + " "); } } } }
Se non viene trovato alcun elemento corrispondente, il metodo non esegue alcuna operazione.
index.cs
123456789101112131415161718192021222324252627using 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()
Il metodo RemoveAt
rimuove un elemento in una posizione specifica dell'indice.
Sintassi:
exampleList.RemoveAt(index);
index.cs
123456789101112131415161718192021222324252627using 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
Il metodo Clear
rimuove semplicemente tutti gli elementi da una lista. Non richiede argomenti.
Sintassi:
exampleList.Clear();
index.cs
123456789101112131415161718192021222324252627using 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
Il metodo Insert
inserisce un elemento nella lista in una posizione specificata dall'indice.
Sintassi:
exampleList.Insert(index, elementToInsert);
index.cs
1234567891011121314151617181920212223using 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 + " "); } } }
Possiamo omettere le parentesi graffe {}
nel caso in cui ci sia solo un'istruzione all'interno di una condizione if
, di un ciclo for
o di un ciclo foreach
.
index.cs
123foreach(int number in numbers) { Console.Write(number + " "); }
Il frammento sopra è equivalente a:
index.cs
12foreach(int number in numbers) Console.Write(number + " ");
Se è già presente un elemento all'indice specificato, esso viene spostato a destra, così come tutti gli altri elementi successivi dell'array, se presenti. Il diagramma seguente illustra il processo:

Contains()
Il metodo Contains
verifica se una lista contiene un elemento specifico. Restituisce un valore booleano (true
o false
).
Sintassi: exampleList.Contains(element);
index.cs
1234567891011121314using 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()
Il metodo IndexOf
restituisce l'indice della prima occorrenza di un elemento in una lista.
Sintassi: exampleList.IndexOf(element);
index.cs
123456789101112131415using 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')); } } }
Se l'elemento non esiste nella lista, restituisce semplicemente -1
:
Il metodo indexOf
è particolarmente utile quando si desidera accedere a un elemento tramite indice senza conoscerne l'indice. Nell'elenco vowels
, si vuole accedere all'elemento o
tramite indice e modificarlo in O
maiuscola:
index.cs
12345678910111213141516171819using 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. Cosa fa il metodo Remove()
?
2. Qual è il modo più veloce per verificare se una lista contiene un elemento specifico?
3. Quale metodo viene utilizzato per rimuovere tutti gli elementi da una lista?
4. Quale sarà l'output del seguente codice?
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Awesome!
Completion rate improved to 2.04
Metodi delle Liste
Scorri per mostrare il menu
In questo capitolo esamineremo alcuni metodi utili delle liste.
Remove()
Il metodo Remove
rimuove la prima occorrenza di un elemento da una lista.
Sintassi:
exampleList.remove(targetElement);
index.cs
123456789101112131415161718192021222324252627using 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 + " "); } } } }
Se non viene trovato alcun elemento corrispondente, il metodo non esegue alcuna operazione.
index.cs
123456789101112131415161718192021222324252627using 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()
Il metodo RemoveAt
rimuove un elemento in una posizione specifica dell'indice.
Sintassi:
exampleList.RemoveAt(index);
index.cs
123456789101112131415161718192021222324252627using 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
Il metodo Clear
rimuove semplicemente tutti gli elementi da una lista. Non richiede argomenti.
Sintassi:
exampleList.Clear();
index.cs
123456789101112131415161718192021222324252627using 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
Il metodo Insert
inserisce un elemento nella lista in una posizione specificata dall'indice.
Sintassi:
exampleList.Insert(index, elementToInsert);
index.cs
1234567891011121314151617181920212223using 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 + " "); } } }
Possiamo omettere le parentesi graffe {}
nel caso in cui ci sia solo un'istruzione all'interno di una condizione if
, di un ciclo for
o di un ciclo foreach
.
index.cs
123foreach(int number in numbers) { Console.Write(number + " "); }
Il frammento sopra è equivalente a:
index.cs
12foreach(int number in numbers) Console.Write(number + " ");
Se è già presente un elemento all'indice specificato, esso viene spostato a destra, così come tutti gli altri elementi successivi dell'array, se presenti. Il diagramma seguente illustra il processo:

Contains()
Il metodo Contains
verifica se una lista contiene un elemento specifico. Restituisce un valore booleano (true
o false
).
Sintassi: exampleList.Contains(element);
index.cs
1234567891011121314using 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()
Il metodo IndexOf
restituisce l'indice della prima occorrenza di un elemento in una lista.
Sintassi: exampleList.IndexOf(element);
index.cs
123456789101112131415using 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')); } } }
Se l'elemento non esiste nella lista, restituisce semplicemente -1
:
Il metodo indexOf
è particolarmente utile quando si desidera accedere a un elemento tramite indice senza conoscerne l'indice. Nell'elenco vowels
, si vuole accedere all'elemento o
tramite indice e modificarlo in O
maiuscola:
index.cs
12345678910111213141516171819using 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. Cosa fa il metodo Remove()
?
2. Qual è il modo più veloce per verificare se una lista contiene un elemento specifico?
3. Quale metodo viene utilizzato per rimuovere tutti gli elementi da una lista?
4. Quale sarà l'output del seguente codice?
Grazie per i tuoi commenti!