C # Méthodes: Renvoi de plusieurs valeurs avec efficacité
Contrairement à C, qui repose sur des références ou des pointeurs pour renvoyer plusieurs valeurs, C # offre une solution plus propre: les tuples. Introduits en C # 7, les tuples fournissent un moyen concis de représenter un groupe de valeurs avec différents types de données. Cela facilite le retour de plusieurs valeurs d'une méthode.
Tirant des tuples en C #
Les tuples sont polyvalents; Leur utilisation principale ici est de renvoyer efficacement plusieurs valeurs.
Exemple illustratif
Cet exemple présente comment les tuples simplifient les rendements de la valeur multiple:
(string firstName, string middleName, string lastName) LookupName(long id) { // Data retrieval logic for first, middle, and last names string first = "John"; // Replace with actual retrieval string middle = "Doe"; // Replace with actual retrieval string last = "Smith"; // Replace with actual retrieval return (first, middle, last); // Tuple literal }
La méthode LookupName
renvoie un tuple contenant trois chaînes. L'accès à ces valeurs est simple:
var names = LookupName(id); Console.WriteLine($"Found {names.firstName} {names.lastName}.");
Éléments de tuple nommés pour plus de clarté
Pour une lisibilité accrue, nommez directement les éléments de tuple:
(string firstName, string middleName, string lastName) LookupName(long id)
Alternativement, nommez-les dans l'instruction de retour:
return (firstName: firstName, middleName: middleName, lastName: lastName);
déconstruction pour une affectation simplifiée
Les tuples prennent en charge la déconstruction, permettant une affectation directe des éléments aux variables:
(string firstName, string middleName, string lastName) = LookupName(id1);
lecture complémentaire
Explorez des exemples et des applications supplémentaires de tuples C # via le lien fourni (lien non inclus car il n'a pas été fourni dans l'entrée d'origine).
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!