Zoeken…


Invoering

Dit onderwerp behandelt de basisprincipes van Kotlin voor beginners.

Opmerkingen

  1. Kotlin-bestand heeft de extensie .kt.
  2. Alle klassen in Kotlin hebben een gemeenschappelijke superklasse Any, dat is een standaardsuper voor een klasse zonder aangegeven supertypes (vergelijkbaar met Object in Java).
  3. Variabelen kunnen worden gedeclareerd als val (onveranderlijk - eenmaal toewijzen) of var (mutables - waarde kan worden gewijzigd)
  4. Puntkomma is niet nodig aan het einde van de afrekening.
  5. Als een functie geen nuttige waarde retourneert, is het retourtype Eenheid. Het is ook optioneel. 6.Referentiële gelijkheid wordt gecontroleerd door de bewerking ===. a === b evalueert waar als en alleen als a en b naar hetzelfde object wijzen.

Basis voorbeelden

1.De aangifte typetype eenheid is optioneel voor functies. De volgende codes zijn equivalent.

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

2.Single-Expression-functies: wanneer een functie een enkele expressie retourneert, kunnen de accolades worden weggelaten en wordt de body opgegeven na = symbool

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

Expliciet declareren van het retourtype is optioneel wanneer dit door de compiler kan worden afgeleid

  fun double(x: Int) = x * 2

3.String-interpolatie: het gebruik van tekenreekswaarden is eenvoudig.

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

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

4.In Kotlin maakt het type systeem onderscheid tussen referenties die null kunnen bevatten (nulbare referenties) en referenties die dat niet kunnen (niet-null referenties). Een normale variabele van het type String kan bijvoorbeeld geen nul bevatten:

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

Om nullen toe te staan, kunnen we een variabele declareren als nullable string, geschreven String ?:

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

5.In Kotlin controleert == daadwerkelijk op gelijkheid van waarden. Volgens conventie wordt een uitdrukking zoals a == b vertaald in

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


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow