Iterare sulle stringhe P2
Fa parte della sezione Fondamenti del percorso Kotlin di Coddy. Lezione 77 di 93.
Oltre all'iterazione di base, le stringhe offrono diversi metodi utili per creare nuove stringhe a partire da quelle esistenti. Un'attività comune consiste nel trasformare i caratteri durante l'iterazione e raccogliere i risultati.
Puoi creare una nuova stringa aggiungendo caratteri a un StringBuilder o semplicemente concatenandoli a una variabile stringa:
val original = "hello"
var result = ""
for (char in original) {
result += char.uppercaseChar()
}
println(result) // HELLOIl metodo uppercaseChar() converte un singolo carattere in maiuscolo, mentre lowercaseChar() fa il contrario. Questi metodi agiscono su singoli valori Char, a differenza di uppercase(), che agisce su intere stringhe.
Un'altra tecnica pratica consiste nel filtrare i caratteri durante l'iterazione. Ad esempio, estrarre solo le cifre da una stringa mista:
val mixed = "a1b2c3"
var digits = ""
for (char in mixed) {
if (char.isDigit()) {
digits += char
}
}
println(digits) // 123Kotlin offre metodi utili per verificare i caratteri, come isDigit(), isLetter() e isWhitespace(), che restituiscono true o false in base al tipo di carattere. Questi metodi semplificano il filtraggio o la classificazione dei caratteri durante l'iterazione.
Sfida
MedioScrivi una funzione extractLetters che accetta una stringa text e restituisce una nuova stringa contenente solo le lettere, convertite in maiuscolo.
Esamina ogni carattere, escludi quelli che non sono lettere e converti i caratteri rimanenti in maiuscolo.
Parametri:
text(String): una stringa che può contenere lettere, cifre, spazi e caratteri speciali
Restituisce: una stringa contenente solo le lettere dell'input, tutte convertite in maiuscolo (String)
Provalo tu
fun extractLetters(text: String): String {
// Scrivi il codice qui
}
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori Parte 1
Operatori aritmeticiOperatore moduloAssegnazione compostaOperatori di confrontoRipasso: matematica semplice7Input/output di base
Funzione printlnTemplate di stringheInput con readLineConversione di tipoRiepilogo - Anni alla pensioneRiepilogo - Vero o falso10Funzioni
Dichiarare una funzioneParametri e argomentiValori di ritornoArgomenti denominatiValori predefinitiFunzioni a espressione singolaRiepilogo - Funzione SigmaRiepilogo - Funzione di validazione13Iterare sulle sequenze
Iterare sugli elementiMetodo WithIndexIterare sulle stringhe P1Iterare sulle stringhe P2Riepilogo - Lettere indicizzate2Variabili
Val vs VarInferenza del tipoNumeriStringaBooleanoConvenzioni di denominazioneRiepilogo - Inizializzare le variabili5Operatori Parte 2
Operatori logici Parte 1Operatori logici Parte 2Operatori logici Parte 3Ternario con espressione ifRipasso - Logica semplice8Calcolatore per dividere il conto
Messaggio di benvenutoAcquisire i dati11FizzBuzz con un tocco
Panoramica del giocoLa funzione FizzBuzz3Nullabilità
Cos'è la null safetyTipi nullableOperatore di chiamata sicuraOperatore ElvisBasi della sfida sulle funzioniAsserzione non-nullRiepilogo - Accesso sicuro6Prendere decisioni
Istruzione ifIf-elseIf come espressioneEspressione whenwhen con intervalliRiepilogo - Calcolatrice semplice9Cicli
Ciclo forCiclo whileCiclo do-whilebreakcontinueIntervalli nei cicliCiclo annidatoRipasso - fattorialeRipasso - input dinamicoEsercitati da solo: Playground Kotlin