Exercice - Utiliser des paramètres dans les méthodes
Lorsque vous créez des méthodes, vous souhaiterez souvent fournir des informations sur la méthode à utiliser. Les informations consommées par une méthode sont appelées un paramètre. Vous pouvez fournir autant de paramètres que nécessaire pour accomplir sa tâche, ou aucun du tout.
Les termes « paramètre » et « argument » sont souvent utilisés de manière interchangeable. Toutefois, 'parameter' fait référence à la variable dans la signature de méthode. L’argument est la valeur passée lorsque la méthode est appelée.
Ajouter des paramètres aux méthodes
Les paramètres d’une méthode fonctionnent comme des variables. Un paramètre est défini en spécifiant le type de données suivi du nom du paramètre. Les paramètres sont déclarés dans la signature de méthode, et les valeurs des paramètres sont fournies par l’appelant de méthode au lieu d’être initialisées à l’intérieur de la méthode elle-même. Considérez le code suivant :
CountTo(5);
void CountTo(int max)
{
for (int i = 0; i < max; i++)
{
Console.Write($"{i}, ");
}
}
Dans cet exemple, la méthode CountTo accepte un paramètre entier nommé max. Le paramètre est référencé dans la for boucle de la méthode. Lorsqu’il CountTo est appelé, l’entier 5 est fourni en tant qu’argument.
Dans cet exercice, vous allez apprendre à créer et à utiliser vos propres paramètres de méthode.
Préparer votre environnement de programmation
Ce module comprend des activités pratiques qui vous guident tout au long du processus de création et d’exécution du code de démonstration. Nous vous encourageons à effectuer ces activités à l’aide de Visual Studio Code comme environnement de développement. L’utilisation de Visual Studio Code pour ces activités vous permet d’être plus à l’aise dans l’écriture et l’exécution de code dans un environnement de développement qui est utilisé par les professionnels du monde entier.
Ouvrez Visual Studio Code.
Vous pouvez utiliser le menu Démarrer de Windows (ou une ressource équivalente pour un autre système d’exploitation) pour ouvrir Visual Studio Code.
Dans le menu Fichier Visual Studio Code, sélectionnez Ouvrir le dossier.
Dans la boîte de dialogue Ouvrir le dossier , accédez au dossier Windows Desktop.
Si vous avez un autre emplacement de dossier où vous conservez des projets de code, vous pouvez utiliser cet emplacement de dossier à la place. Pour cette formation, l’important est d’avoir un emplacement facile à localiser et à mémoriser.
Dans la boîte de dialogue Ouvrir le dossier , sélectionnez Sélectionner un dossier.
Si vous voyez une boîte de dialogue de sécurité vous demandant si vous approuvez les auteurs, sélectionnez Oui.
Dans le menu Terminal Visual Studio Code, sélectionnez Nouveau terminal.
Notez qu’une invite de commandes dans le panneau Terminal affiche le chemin du dossier actif. Par exemple:
C:\Users\someuser\Desktop>Remarque
Si vous travaillez sur votre propre PC, plutôt que dans un bac à sable ou un environnement hébergé, et que vous avez suivi d’autres modules Microsoft Learn dans cette série C#, vous avez peut-être déjà créé un dossier de projet pour les exemples de code. Si c’est le cas, vous pouvez passer à l’étape suivante, qui est utilisée pour créer une application console dans le dossier TestProject.
À l’invite de commandes terminal, pour créer une application console dans un dossier spécifié, tapez dotnet new console -o ./CsharpProjects/TestProjects , puis appuyez sur Entrée.
Cette commande CLI .NET utilise un modèle de programme .NET pour créer un projet d’application console C# à l’emplacement du dossier spécifié. La commande crée les dossiers CsharpProjects et TestProject pour vous, et utilise TestProject comme nom du fichier
.csproj.Dans le panneau EXPLORER, développez le dossier CsharpProjects .
Vous devriez voir le dossier TestProject et deux fichiers, un fichier programme C# nommé Program.cs et un fichier projet C# nommé TestProject.csproj.
Dans le panneau EXPLORATEUR, pour afficher votre fichier de code dans le panneau Éditeur, sélectionnez Program.cs.
Supprimez les lignes de code existantes.
Vous allez utiliser ce projet de console C# pour créer, générer et exécuter des exemples de code au cours de ce module.
Fermez le panneau du Terminal.
Créer une méthode avec des paramètres
Dans cette tâche, vous allez créer une méthode qui ajuste les heures planifiées à un autre fuseau horaire GMT. La méthode doit accepter une liste d’heures, le fuseau horaire actuel et le nouveau fuseau horaire. Commençons !
Entrez le code suivant dans l’Éditeur Visual Studio Code :
int[] schedule = {800, 1200, 1600, 2000};Pour créer une méthode avec des paramètres, entrez le code suivant sur une nouvelle ligne vide :
void DisplayAdjustedTimes(int[] times, int currentGMT, int newGMT) { }Notez que les paramètres sont déclarés similaires à la façon dont vous déclarez des variables, en utilisant le type de données suivi du nom de la variable. Vous pouvez utiliser des paramètres de n’importe quel type de données, comme
string,bool,int, tableaux, etc. Plusieurs paramètres d’une méthode sont toujours séparés par des virgules.Entrez le code suivant dans la
DisplayAdjustedTimesméthode :int diff = 0; if (Math.Abs(newGMT) > 12 || Math.Abs(currentGMT) > 12) { Console.WriteLine("Invalid GMT"); }Notez comment vous n’avez pas besoin de déclarer les variables
newGMTetcurrentGMT, dans la mesure où elles sont déjà déclarées dans la signature de méthode. Vous n’initialisez pas non plus les variables, car la méthode suppose que l’appelant fournit ces arguments avec des valeurs affectées.Dans cette étape, vous créez
int diffpour stocker la différence de temps, puis vérifiez que les valeurs GMT fournies sont comprises entre -12 et 12. L’utilisationMath.Absvous donne la valeur absolue d’un nombre, de sorte que les valeurs GMT ne sont pas valides si elles sont supérieures à 12.Pour calculer la différence de temps, mettez à jour la
DisplayAdjustedTimesméthode comme suit :int diff = 0; if (Math.Abs(newGMT) > 12 || Math.Abs(currentGMT) > 12) { Console.WriteLine("Invalid GMT"); } else if (newGMT <= 0 && currentGMT <= 0 || newGMT >= 0 && currentGMT >= 0) { diff = 100 * (Math.Abs(newGMT) - Math.Abs(currentGMT)); } else { diff = 100 * (Math.Abs(newGMT) + Math.Abs(currentGMT)); }Dans ce code, vous vérifiez si vous devez ajouter ou soustraire les valeurs absolues des fuseaux horaires GMT pour obtenir la différence en heures. Si les valeurs GMT partagent le même signe (positif ou les deux négatifs), la différence d’heures est égale à la différence entre les deux nombres. Si les valeurs GMT ont des signes opposés, la différence est égale à la somme des deux nombres. Étant donné que les heures sont représentées en centaines, vous multipliez le résultat par 100.
Pour afficher les résultats, entrez le code suivant à la fin de la
DisplayAdjustedTimesméthode :for (int i = 0; i < times.Length; i++) { int newTime = (times[i] + diff) % 2400; Console.WriteLine($"{times[i]} -> {newTime}"); }Pour appeler votre méthode, entrez le code suivant après la déclaration de
int[] schedulevariable :DisplayAdjustedTimes(schedule, 6, -6);Notez que les variables et les littéraux peuvent être fournis en tant qu’arguments pour une méthode. En utilisant des paramètres d’entrée, la méthode n’est pas limitée à l’utilisation des valeurs des variables globales.
Vérifier votre travail
Dans cette tâche, vous allez exécuter votre application à partir du Terminal intégré et vérifier que votre code fonctionne correctement. Commençons.
Enregistrez votre travail à l’aide de Ctrl + S ou du menu Fichier Visual Studio Code.
Si nécessaire, ouvrez le volet Terminal intégré de Visual Studio Code.
Dans le panneau EXPLORATEUR, pour ouvrir un terminal à l’emplacement de votre dossier TestProject, cliquez avec le bouton droit sur TestProject, puis sélectionnez Ouvrir dans le terminal intégré.
À l’invite de commandes terminal, entrez dotnet run
Vérifiez que votre code produit la sortie suivante :
800 -> 2000 1200 -> 0 1600 -> 400 2000 -> 800Si votre code affiche des résultats différents, vous devez le passer en revue afin de trouver votre erreur et d’effectuer des mises à jour. Réexécutez le code pour voir si vous avez résolu le problème. Poursuivez la mise à jour et l’exécution de votre code jusqu’à ce que votre code produise les résultats attendus.
Récapitulatif
Voici ce que vous avez appris sur les paramètres jusqu’à présent :
- Les informations peuvent être transmises à des méthodes sous la forme de paramètres.
- Les paramètres sont déclarés dans la signature de méthode.
- Plusieurs paramètres sont séparés par des virgules.
- Les méthodes peuvent accepter des arguments variables ou littéraux.