Ricerca…


introduzione

Questo argomento copre le basi di Kotlin per i principianti.

Osservazioni

  1. Il file Kotlin ha un'estensione .kt.
  2. Tutte le classi in Kotlin hanno una superclasse comune Any, che è un super predefinito per una classe senza dichiarare supertipi (simile a Object in Java).
  3. Le variabili possono essere dichiarate come val (immutable- assign once once) o var (mutables- valore può essere modificato)
  4. Il punto e virgola non è necessario alla fine della dichiarazione.
  5. Se una funzione non restituisce alcun valore utile, il suo tipo di ritorno è Unit.It è anche facoltativo. 6. L'uguaglianza regi- strale viene verificata dall'operazione ===. a === b restituisce true se e solo se a e b puntano allo stesso oggetto.

Esempi di base

1. La dichiarazione del tipo di ritorno dell'Unità è opzionale per le funzioni. I seguenti codici sono equivalenti.

    fun printHello(name: String?): Unit {
        if (name != null)
            println("Hello ${name}")
    }
    
    fun printHello(name: String?) {
        ...
    }

2. Funzioni Single-Expression: quando una funzione restituisce una singola espressione, le parentesi graffe possono essere omesse e il corpo viene specificato dopo = simbolo

  fun double(x: Int): Int = x * 2

Dichiarare esplicitamente che il tipo di reso è facoltativo quando questo può essere dedotto dal compilatore

  fun double(x: Int) = x * 2

3. Interpolazione a stringhe: l'uso di valori stringa è facile.

In java:
    int num=10
    String s  = "i =" + i;

In Kotlin
    val num = 10
    val s = "i = $num"

4. In Kotlin, il sistema tipo distingue tra riferimenti che possono contenere null (riferimenti nullable) e quelli che non possono contenere (riferimenti non nulli). Ad esempio, una variabile regolare di tipo String non può contenere null:

var a: String = "abc"
a = null // compilation error

Per consentire i null, possiamo dichiarare una variabile come stringa nullable, scritta String ?:

var b: String? = "abc"
b = null // ok

5.In Kotlin, == controlla effettivamente l'uguaglianza dei valori. Per convenzione, viene tradotta un'espressione come a == b

   a?.equals(b) ?: (b === null)


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow