Comment Obtenir une sous-liste en C#
J'ai un List<String>
et j'ai besoin de prendre une sous-liste de cette liste. Est-il des méthodes de la Liste disponible dans .NET 3.5?
- Pouvez-vous nous montrer un exemple de code de ce que vous avez, ou de les préciser? Je ne suis pas la suite de la question.
- ya 3.5 ..désolé pour la faute de frappe..
- J'ai une liste dire List<String> liste = new list<String>(); j'ai besoin de prendre une sous-liste de cette liste-dire à partir de l'indice 2 à longueur-1..
InformationsquelleAutor Thomas Manalil | 2009-11-11
Vous devez vous connecter pour publier un commentaire.
Vous voulez la Liste::GetRange(firstIndex, comte). Voir http://msdn.microsoft.com/en-us/library/21k0e39c.aspx
Est-ce que vous êtes après?
Si vous êtes à la recherche pour supprimer la sous-liste d'éléments de la liste initiale, vous pouvez faire:
Serait-il aussi facile que l'exécution d'une requête LINQ sur votre Liste?
subList
de Java, qui expose une mutable vue dans la liste d'origine. Il se comporte différemment, ce qui peut ne pas être immédiatement évident, donc j'ai pensé qu'il serait utile de le signaler, pour le bénéfice de toute personne qui voit cela plus tard. Hors sujet, vous pouvez faire du yoga ou de la méditation ou de quelque chose; vous êtes allé (0 à rouge dans le visage des fous sans aucune provocation que ce soit.Utiliser la clause where de LINQ:
Dans les déclarations ci-dessus "p" est l'objet qui est dans la liste. Donc, si vous avez utilisé un objet de données, c'est à dire:
alors votre linq devrait ressembler à ceci:
Votre collection de classe pourrait avoir une méthode qui renvoie une collection (une sous-liste) basée sur des critères, transmis à définir le filtre. Construire une nouvelle collection avec la boucle foreach et à le donner.
Ou, encore, la méthode et la boucle de modifier la collection existante, par la fixation d'un "filtrage" ou "active" drapeau (propriété). Celui-ci pourrait travailler mais peut aussi causer des problèmes dans le code multithread. Si d'autres objets dépedances sur le contenu de la collection, ce est bon ou mauvais en fonction de la façon dont vous utilisez les données.
Inverser les éléments dans une liste de sous -
Donne 0,1,4,3,2,5,6
Range
est vrai avec un type de données entier. que faire si votre type de données estDataTime
et vous avez besoin de récupérer une liste de dossiers entre les deux dates?Avec LINQ:
Si vous avez besoin d'foreach, alors pas besoin de ToList:
Avantage de LINQ est que si vous voulez simplement passer certains leaders de l'élément,vous pouvez :
c'est à dire pas besoin de prendre soin de compter/longueur, etc.