Esercizio - Restituire valori booleani dai metodi
I metodi con tipi restituiti booleani possono essere semplici, ma sono utili per consolidare il codice. I metodi che restituiscono bool valori possono essere chiamati per valutare l'input dei dati ovunque, nelle if istruzioni, nelle dichiarazioni di variabili e altro ancora. In questo esercizio si otterrà un'esperienza nella creazione e nell'uso dei metodi di tipo restituito booleani.
Creare un metodo che restituisce un valore Boolean
Si supponga di essere un candidato in un colloquio di scrittura del codice. L'intervistatore vuole che tu controlli se diverse parole sono un palindromo. Una parola è un palindromo se legge le stesse indietro e in avanti. Ad esempio, la parola racecar è un palindromo. È ora di iniziare.
Nell'editor di Visual Studio Code eliminare qualsiasi codice creato negli esercizi precedenti.
Immettere il codice seguente nell'editor:
string[] words = {"racecar" ,"talented", "deified", "tent", "tenet"}; Console.WriteLine("Is it a palindrome?"); foreach (string word in words) { Console.WriteLine($"{word}: {IsPalindrome(word)}"); }Questo codice stabilisce alcuni test case e fa riferimento a un metodo denominato
IsPalindrome. Le parole e l'output delIsPalindromemetodo vengono stampate nelleConsole.WriteLineistruzioni.Immettere una nuova riga di codice vuota e creare
boolil metodo immettendo il codice seguente:bool IsPalindrome(string word) { return true; }Si consideri come controllare se una parola è un palindromo.
Un modo per verificare è confrontare il primo e l'ultima lettera della parola. Se corrispondono, confrontare il secondo e l'ultima lettera della parola. Se si raggiunge il centro della parola, tutte le lettere sono state confrontate e abbinate. Se le lettere non corrispondono, la parola non è un palindromo.
Aggiornare il metodo
IsPalindromecon il codice seguente:bool IsPalindrome(string word) { int start = 0; int end = word.Length - 1; while (start < end) { if (word[start] != word[end]) { return false; } start++; end--; } return true; }Si notino le variabili
starteendpuntano al primo e all'ultimo carattere nella stringa. Il ciclo si interrompe quando viene soddisfatta la metà della parola; quandostarteendpuntano allo stesso carattere o incrociato l'uno sull'altro. I puntatori vengono spostati verso l'interno ogni volta che c'è una corrispondenza. Se non corrispondono, il metodo termina e restituiscefalse.Ora il metodo controlla se una parola è un palindromo e restituisce
trueofalsedi conseguenza.
Controlla il tuo lavoro
In questa attività si eseguirà l'applicazione dal terminale integrato e si verificherà che il codice funzioni correttamente. Iniziamo.
Salvare il lavoro usando CTRL + S o il menu File di Visual Studio Code.
Se necessario, aprire il pannello Terminale integrato di Visual Studio Code.
Nel pannello EXPLORER, per aprire un terminale nel percorso della cartella TestProject, fare clic con il pulsante destro del mouse su TestProject e quindi scegliere Apri nel terminale integrato.
Al prompt dei comandi del terminale immettere dotnet run
Verificare che il codice produca l'output seguente:
Is it a palindrome? racecar: True talented: False deified: True tent: False tenet: TrueSe il codice visualizza risultati diversi, è necessario esaminarlo per trovare l'errore e apportare aggiornamenti. Eseguire di nuovo il codice per verificare se il problema è stato risolto. Continuare ad aggiornare ed eseguire il codice fino a quando non produce i risultati previsti.