S'il y a une courte voie en plus de la création de boucles et de nouvelles collections pour ajouter des objets après un objet spécifique dans la liste existante? P>
juste un exemple: p>
"Amy", "Jerry", "Tony", "Amy", "Jack". Je veux ajouter "Simon" après chaque "Amy" de manière courte p>
3 Réponses :
Si vous savez où vous voulez entrer un élément, vous pouvez faire
List.Insert(position, item)
Si j'utilise que je devrais connaître chaque position d'article que je souhaite ajouter après, mais lorsque j'ajoute un élément à la liste, cela redimensionnera la liste ou peut-être que j'ai un problème.
Vous pouvez simplement utiliser un pour une boucle au lieu d'une boucle de forach.
vrai mais la longueur ne va pas grandir chaque ajout?
Vous pouvez utiliser LINQ pour le faire.
List<String> list = new List<String>() { "amy","jerry","tony","amy","jack" };
list.AddAfterEach(p => p == "amy", "simon");
Cet échec n'a-t-il pas échoué comme la collection a changé?
@Darrenyoung Nope, la commande nécessite de traiter tous les éléments de la liste, de sorte que l'énumérable ne remarquera pas que la liste a été modifiée. Le code est testé quand même et fonctionne bien.
Si vous faites une édition, veuillez clarifier clairement quelle partie vous avez modifiée afin que les réponses précédentes ne semblent pas hors de propos.