0Pricing
Android Academy · Lezione

Mappe e insiemi

Collezioni di coppie chiave-valore e di valori univoci.

Mappe e insiemi è una lezione Android Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Android Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Android Academy include 4 lezioni in totale.

Mappe e set

Una mappa memorizza coppie chiave-valore: ogni chiave univoca punta a un valore, come in un dizionario.

Un set memorizza elementi univoci, senza duplicati e senza un ordine garantito.

Entrambi sono tipi di raccolta diversi dalle liste, utili quando servono ricerche rapide o l'unicità degli elementi.

Creare una mappa

Usi mapOf() con coppie key to value per creare una mappa di sola lettura.

Le chiavi devono essere univoche. Qui associamo nomi di frutti ai relativi prezzi.

fun main() {
    val prices = mapOf("apple" to 3, "banana" to 2)
    println(prices)
    println("Size: ${prices.size}")
}

Cercare valori

Legga un valore usando le parentesi quadre e una chiave. Se la chiave manca, ottiene null.

Usi l'operatore Elvis ?: per fornire un valore predefinito quando una chiave è assente.

fun main() {
    val prices = mapOf("apple" to 3, "banana" to 2)
    println(prices["apple"])
    println(prices["cherry"] ?: "not found")
}

Scorrere una mappa

Un ciclo for su una mappa fornisce ogni voce. Può destrutturarla in key e value.

Questo è il modo consueto per elaborare ogni coppia.

fun main() {
    val ages = mapOf("Ada" to 36, "Bob" to 24)
    for ((name, age) in ages) {
        println("$name is $age")
    }
}

Mappe modificabili

Usi mutableMapOf() quando deve aggiungere o modificare voci.

Assegnare un valore a una nuova chiave la inserisce; assegnarlo a una chiave esistente ne sostituisce il valore.

fun main() {
    val stock = mutableMapOf("pens" to 5)
    stock["books"] = 10
    stock["pens"] = 8
    println(stock)
}

Rimuovere elementi da una mappa

Chiami remove() con una chiave per eliminare la voce corrispondente da una mappa modificabile.

Usi containsKey() per verificare se una chiave esiste prima di farvi affidamento.

fun main() {
    val m = mutableMapOf("a" to 1, "b" to 2)
    m.remove("a")
    println(m.containsKey("a"))
    println(m)
}

Chiavi e valori

Ogni mappa espone le raccolte keys e values.

Le usi quando le interessa solo uno dei due elementi delle coppie.

fun main() {
    val prices = mapOf("apple" to 3, "banana" to 2)
    println(prices.keys)
    println(prices.values)
}

Creare un set

Usi setOf() per creare un set di sola lettura. I valori duplicati vengono eliminati automaticamente.

Questo rende i set perfetti per raccogliere elementi univoci.

fun main() {
    val tags = setOf("kotlin", "android", "kotlin")
    println(tags)
    println("Size: ${tags.size}")
}

Controlli di appartenenza

I set sono ideali per eseguire rapidamente controlli di appartenenza. Utilizzi in o contains() per verificare se un valore è presente.

Controllare un set è in genere più veloce che scorrere una lista.

fun main() {
    val allowed = setOf("admin", "editor")
    println("admin" in allowed)
    println(allowed.contains("guest"))
}

Set mutabili e rimozione dei duplicati

Utilizzi mutableSetOf() per creare un set nel tempo. Aggiungere un valore già esistente non produce alcun effetto.

Un trucco rapido: chiami toSet() su una lista per rimuovere i duplicati.

fun main() {
    val nums = listOf(1, 2, 2, 3, 3, 3)
    val unique = nums.toSet()
    println(unique)
}

Map o set

Scelga una map quando deve associare chiavi a valori, ad esempio un nome utente a un profilo.

Scelga un set quando Le interessa solo sapere se qualcosa esiste, senza consentire duplicati.

Verifica rapida

Verifichi la Sua comprensione di map e set.

Riepilogo

Le map memorizzano coppie chiave-valore con mapOf() / mutableMapOf(); cerchi i valori tramite chiave e gestisca le chiavi mancanti con ?:.

I set memorizzano elementi unici con setOf() / mutableSetOf() e consentono controlli di appartenenza rapidi.

Domande Frequenti

La lezione «Mappe e insiemi» è gratuita?

Sì — il testo completo di «Mappe e insiemi» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Android Academy, passa a CoddyKit PRO. Il corso Android Academy include 4 lezioni in totale.

Cosa imparerò in «Mappe e insiemi»?

Collezioni di coppie chiave-valore e di valori univoci. Eserciti Android Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Android Academy?

Non è richiesta alcuna esperienza precedente. Android Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.

Quanto tempo richiede la lezione «Mappe e insiemi»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Android Academy?

Sì. Ogni lezione Android Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Liste e liste mutabili
  2. Mappe e insiemi
  3. map, filter, forEach
  4. Lambda e funzioni di ordine superiore
← Torna a Android Academy