La Syntaxe C# - Exemple d'une Expression Lambda - ForEach() sur Liste Générique
Tout d'abord, je sais qu'il existe des méthodes hors du générique List<>
classe déjà dans le cadre de faire une itération sur les List<>
.
Mais à titre d'exemple, quelle est la bonne syntaxe pour écrire un ForEach méthode pour effectuer une itération sur chaque objet d'un List<>
, et de faire une Console.WriteLine(object.ToString())
sur chaque objet.
Quelque chose qui prend la List<>
comme premier argument et l'expression lambda comme deuxième argument.
La plupart des exemples que j'ai vu sont en fait que les méthodes d'extension, ou qui impliquent de LINQ. Je suis à la recherche d'un bon vieil exemple de méthode.
Vous devez vous connecter pour publier un commentaire.
... et de l'appeler ainsi:
Ci-dessus peut aussi être écrite avec moins de code comme:
Cela crée une liste générique et le remplit avec l'interface IEnumerable et appelle ensuite la liste des objets ForEach.
Est-ce que vous me demandez?
... et de l'appeler ainsi:
Souhaitez mettre là-bas qu'il n'y a pas beaucoup à s'inquiéter si quelqu'un apporte une réponse comme une extension de la méthode, car une méthode d'extension est juste une façon cool de faire appel à une méthode d'instance. Je comprends que vous voulez la réponse, sans l'aide d'une méthode d'extension. Peu importe si la méthode est définie comme statique, de l'instance ou de l'extension - le résultat est le même.
Le code ci-dessous utilise le code de la accepté de répondre à définir une méthode d'extension et une méthode d'instance et crée une unité de test pour montrer le résultat est le même.
Littéralement, la seule chose que vous devez faire pour convertir une extension de la méthode à une méthode d'instance est de supprimer l'
static
modificateur et le premier paramètre de la méthode.Cette méthode
devient
Vous pouvez traverser chaque chaîne dans la liste, vous pouvez effectuer la recherche dans l'ensemble de générique à l'aide d'un seul état, ce qui rend la recherche plus facile.