Riepilogo - Estrazione sicura del valore
Fa parte della sezione Fondamenti del percorso Swift di Coddy. Lezione 15 di 86.
Sfida
FacileScrivi una funzione formatPlayerInfo che accetta il name, lo score e il level di un giocatore come stringhe e restituisce un riepilogo formattato del giocatore.
Usa tutte e tre le tecniche di unwrap che hai imparato per gestire i valori potenzialmente mancanti:
- Usa
guard letper verificare se il nome è valido (non vuoto). Se il nome è vuoto, restituisci subito"Unknown player". - Usa
??(coalescenza nil) per fornire un punteggio predefinito pari a"0"se il punteggio è vuoto. - Usa
if letper verificare se il livello è valido (non vuoto). Se ha un valore, includilo nell'output; altrimenti, ometti la parte relativa al livello.
Formato dell'output:
- Se il livello è specificato:
"[name] - Score: [score], Level: [level]" - Se il livello è vuoto:
"[name] - Score: [score]"
Parametri:
name(String): nome del giocatore (una stringa vuota rappresenta nil)score(String): punteggio del giocatore (una stringa vuota rappresenta nil)level(String): livello del giocatore (una stringa vuota rappresenta nil)
Valore restituito: Una stringa formattata con le informazioni del giocatore, oppure "Unknown player" se il nome è vuoto.
Suggerimento: Converti le stringhe vuote in valori opzionali all'interno della tua funzione, verificando se sono vuote e assegnando nil in tal caso.
Provalo tu
func formatPlayerInfo(name: String, score: String, level: String) -> String {
// Scrivi il codice qui
}
Tutte le lezioni di Fondamenti
4Operatori – Parte 1
Operatori aritmeticiOperatore moduloAssegnazione compostaRiepilogo - Matematica sempliceOperatori di confronto7I/O di base
Funzione printInterpolazione di stringheInput con ReadLineConversione di tipoRipasso - Fino a 120Ripasso - Vero o falso10Funzioni
Dichiarare una funzioneParametri e argomentiValori restituitiEtichette degli argomentiRiepilogo - Funzione SigmaRiepilogo - Funzione di validazioneValori predefiniti13Iterare sulle sequenze
Iterare sugli elementiIl metodo enumerateIterare sulle stringhe P1Iterare sulle stringhe P22Variabili
Let vs VarAnnotazioni di tipoNumeriStringaBooleanoConvenzioni di denominazioneRiepilogo - Inizializzare le variabili5Operatori Parte 2
Operatori logici Parte 1Operatori logici Parte 2Riepilogo - Logica sempliceOperatori logici Parte 3Operatore ternario8Calcolatore per dividere il conto
Messaggio di benvenutoAcquisire i dati11FizzBuzz con una variante
Panoramica del giocoLa funzione FizzBuzz3Valori opzionali
Cosa sono i valori opzionaliEstrazione del valore con if letGuard letOperatore di coalescenza nilRiepilogo - Estrazione sicura del valore6Decisioni
Istruzione ifIf - ElseRipasso - Calcolatrice sempliceIstruzione switchSwitch con intervalli9Cicli
Ciclo for-inCiclo whileCiclo repeat-whileBreakContinueRipasso - FattorialeIntervalli nei cicliCiclo annidatoRipasso - Input dinamicoEsercitati da solo: Playground Swift