Iniziamo con un List<X>
. Ogni oggetto di X ha un attributo x di tipo Y. Puoi proporre un modo elegante per costruire un Elenco che è composto dallo Z.x
per ogni elemento Z di alcuni List<X>
? Sono sicuro che l'iterazione "manuale" su List<X>
non è necessaria. Grazie per qualsiasi consiglio.Come estrarre (in C#) un attributo specifico da ogni elemento di un elenco e ottenere un nuovo elenco di questi attributi?
5
A
risposta
10
Se questo è List<T>
, quindi:
var newList = oldList.ConvertAll(item => item.x);
o con LINQ:
var newList = oldList.Select(item => item.x).ToList();
Si noti che in C# 2.0 la prima versione potrebbe essere necessario il tipo generico menzionato esplicitamente:
List<Y> newList = oldList.ConvertAll<Y>(delegate (X item) { return item.x; });
(ma in realtà è identico al 100% alla prima riga)
C'è anche un valore statico Array.ConvertAll
che si comporta in modo simile, ma per gli array.
Problemi correlati
- 1. C# - Come estrarre un elenco di un particolare membro di matrice da un elenco di matrici
- 2. Dividere un elenco python da un carattere in ogni elemento
- 3. Ottenere un elenco di opzioni di attributo da Magento
- 4. Come posso estrarre un elenco di TestCase da un TestSuite?
- 5. Rimuovere un elemento specifico da un elenco utilizzando LINQ
- 6. aggiungere un carattere a ogni elemento in un elenco
- 7. Loop per ogni elemento in un elenco
- 8. Elenco di oggetti con un attributo unico
- 9. Elimina un elemento da un elenco generico
- 10. Come ottenere un elenco di proprietà con un determinato attributo?
- 11. C# Rimozione di un elenco da un elenco
- 12. Come selezionare ogni elemento n-esimo da un elenco
- 13. Come ottenere un elenco distinto da un elenco personalizzato?
- 14. restituisce un elenco di elementi da un elenco in OCaml
- 15. Ordina un elenco (C#) da molti campi?
- 16. Impostazione di un attributo personalizzato su un elemento di elenco in un controllo di selezione HTML (.NET/C#)
- 17. Creazione di un nuovo elenco che aggiunge e somma elementi da un elenco precedente
- 18. LINQ e come restituire un elenco di un tipo specifico
- 19. Come ottenere un elenco secondario in C#
- 20. Estrarre tutte le chiavi da un elenco di dizionari
- 21. Java 8 - Come trasformare un elenco di matrici in un elenco di un oggetto di classe specifico
- 22. Python - Come estrarre gli ultimi x elementi da un elenco
- 23. jQuery analisi XML: ottenere un elemento con un attributo specifico
- 24. Selezione casuale di un elemento da un elenco ponderato
- 25. Come ottenere ogni elemento in un elenco di elenchi di elenchi?
- 26. In C# come posso deserializzare un documento XML contenente un elenco di elementi senza un elemento di elenco circostante
- 27. selezionare un elemento da una colonna personalizzata da un elenco
- 28. Come ottenere un elenco di variabili in un modulo Python specifico?
- 29. Come creare un nuovo elenco da un modello di elenco (modello a oggetti client)
- 30. come copiare un elenco in un nuovo elenco o recuperare l'elenco in base al valore C#