Operatori di sequenza
Fa parte della sezione Fondamenti del percorso Kotlin di Coddy. Lezione 81 di 93.
Kotlin fornisce l'operatore + per combinare le liste, rendendo facile unire le raccolte. Funziona in modo simile a come concateni le stringhe.
Per unire due liste in una sola, usa semplicemente l'operatore +:
val first = listOf(1, 2, 3)
val second = listOf(4, 5, 6)
val combined = first + second
println(combined) // [1, 2, 3, 4, 5, 6]Puoi anche aggiungere un singolo elemento a una lista usando lo stesso operatore:
val colors = listOf("Red", "Green")
val moreColors = colors + "Blue"
println(moreColors) // [Red, Green, Blue]L'operatore - rimuove elementi da una lista. Crea una nuova lista senza l'elemento specificato:
val numbers = listOf(1, 2, 3, 2, 4)
val result = numbers - 2
println(result) // [1, 3, 2, 4]Nota che viene rimossa solo la prima occorrenza dell’elemento. Per rimuovere tutti gli elementi corrispondenti, sottrai invece una lista:
val numbers = listOf(1, 2, 3, 2, 4)
val result = numbers - listOf(2)
println(result) // [1, 3, 4]Questi operatori restituiscono sempre una nuova lista: le liste originali rimangono invariate. Questo li rende sicuri da usare senza preoccuparsi di modificare accidentalmente i tuoi dati.
Sfida
MedioRiceverai due liste di interi e un singolo intero da rimuovere. Combina le due liste usando l'operatore +, quindi rimuovi tutte le occorrenze dell'intero specificato usando l'operatore - con una lista.
Stampa la lista risultante.
Formato dell'input:
- Prima riga: un intero
nche rappresenta il numero di elementi nella prima lista - Le successive
nrighe: interi per la prima lista - Riga successiva: un intero
mche rappresenta il numero di elementi nella seconda lista - Le successive
mrighe: interi per la seconda lista - Ultima riga: l'intero da rimuovere dalla lista combinata
Formato dell'output:
Stampa la lista risultante nel formato predefinito delle liste di Kotlin.
Esempio:
Se la prima lista è [1, 2, 3], la seconda lista è [2, 4, 2] e il numero da rimuovere è 2, la lista combinata sarebbe [1, 2, 3, 2, 4, 2]. Dopo aver rimosso tutte le occorrenze di 2, l'output dovrebbe essere:
[1, 3, 4]Provalo tu
fun main() {
// Leggi la prima lista
val n = readLine()!!.toInt()
val list1 = mutableListOf<Int>()
repeat(n) {
list1.add(readLine()!!.toInt())
}
// Leggi la seconda lista
val m = readLine()!!.toInt()
val list2 = mutableListOf<Int>()
repeat(m) {
list2.add(readLine()!!.toInt())
}
// Leggi l'intero da rimuovere
val toRemove = readLine()!!.toInt()
// TODO: Scrivi qui il tuo codice
// Combina le due liste usando l'operatore +
// Rimuovi tutte le occorrenze di toRemove usando l'operatore - con una lista
// Stampa la lista risultante
println(result)
}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 validazione2Variabili
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 FizzBuzz14Liste: argomenti avanzati
Slicing delle liste con SubListSlicing delle liste con Take e DropOperatori di sequenzaIl metodo containsRiepilogo - Cerca una pagina3Nullabilità
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