Kotlin-muuttujat ja perustyypit

Tässä opetusohjelmassa opit muuttujista, niiden luomisesta ja perustietotyypeistä, joita Kotlin tukee muuttujien luomisessa.

Kuten tiedät, muuttuja on paikka muistissa (tallennusalue) tietojen säilyttämiseksi.

Tallennusalueen osoittamiseksi jokaiselle muuttujalle tulisi antaa yksilöllinen nimi (tunniste). Lisätietoja muuttujan nimeämisestä Kotlinissa?

Kuinka ilmoittaa muuttuja Kotlinissa?

Muuttujan ilmoittamiseksi Kotlinissa käytetään joko avainsanaa vartai valavainsanaa. Tässä on esimerkki:

 var kieli = "ranska" val pisteet = 95

Eroa var ja val: n käytössä käsitellään myöhemmin artikkelissa. Keskitymme toistaiseksi muuttujan ilmoitukseen.

Tässä kieli on tyypin muuttuja Stringja scoreon tyypin muuttuja Int. Sinun ei tarvitse määrittää muuttujien tyyppiä; Kotlin tekee sen epäsuorasti puolestasi. Kääntäjä tietää tämän alustuslausekkeella ("ranska" on a Stringja 95 on kokonaislukuarvo yllä olevassa ohjelmassa). Tätä kutsutaan tyypin päättelyksi ohjelmoinnissa.

Voit kuitenkin määrittää tyypin nimenomaisesti, jos haluat:

 var kieli: Merkkijono = "ranska" val pisteet: Int = 95

Olemme alustaneet muuttujan ilmoituksen aikana yllä olevissa esimerkeissä. Se ei kuitenkaan ole välttämätöntä. Voit ilmoittaa muuttujan ja määrittää sen tyypin yhdessä lauseessa ja alustaa muuttujan toisessa käskyssä myöhemmin ohjelmassa.

 var kieli: Merkkijono // tyypin muuttujailmoitus String… kieli = "ranska" // muuttujan alustus val-pisteet: Int // muuttujan ilmoituksen tyyppi Int… pisteet = 95 // muuttujan alustus 

Tässä on muutama esimerkki, joka johtaa virheisiin.

 var kieli // Virhekieli = "ranska"

Tässä kielimuuttujan tyyppiä ei ole erikseen määritelty, eikä muuttujaa alusteta ilmoituksen aikana.

 var kieli: Merkkijonokieli = 14 // Virhe

Tässä yritämme määrittää 14 (kokonaislukuarvo) erityyppiselle muuttujalle ( String).

Var: n ja val: n välinen ero

  • val (Muuttamaton viite) - valAvainsanalla ilmoitettua muuttujaa ei voi muuttaa, kun arvo on määritetty. Se on samanlainen kuin lopullinen muuttuja Javassa.
  • var (Mutable reference) - varAvainsanalla ilmoitettua muuttujaa voidaan muuttaa myöhemmin ohjelmassa. Se vastaa tavallista Java-muuttujaa.

Tässä on muutama esimerkki:

 var language = "ranska" language = "saksa" 

Tässä languagemuuttuja määritetään uudelleen saksaksi. Koska muuttuja ilmoitetaan käyttäen var, tämä koodi toimii täydellisesti.

 val language = "ranska" language = "saksa" // Virhe

Et voi määrittää kielimuuttujaa uudelleen Germanyllä olevassa esimerkissä, koska muuttuja ilmoitetaan käyttäen val.

Nyt tiedät, mitä Kotlin-muuttujat ovat, on aika oppia erilaisia ​​arvoja, jotka Kotlin-muuttuja voi ottaa.

Kotlinin perustyypit

Kotlin on staattisesti kirjoitettu kieli, kuten Java. Toisin sanoen muuttujan tyyppi tunnetaan kääntöajan aikana. Esimerkiksi,

 val kieli: Int val -merkit = 12,3

Tässä kääntäjä tietää, että kieli on tyyppiä Intja merkit ovat tyyppiä Doubleennen kääntöaikaa.

Kotlinin sisäänrakennetut tyypit voidaan luokitella seuraavasti:

  • Numerot
  • Hahmot
  • Boolealaiset
  • Taulukot

Numerotyyppi

Kotlinin numerot ovat samanlaisia ​​kuin Java. Sisäänrakennettuja numeroita edustavia tyyppejä on 6.

  • Tavu
  • Lyhyt
  • Int
  • Pitkä
  • Kellua
  • Kaksinkertainen

1. Tavu

  • ByteTietojen tyyppi voi olla arvoja, -128-127 (8-bittinen allekirjoitettu kahden komplementti kokonaisluku).
  • Sitä käytetään Inttai muiden kokonaislukutietotyyppien sijaan muistin säästämiseen, jos on varma, että muuttujan arvo on sisällä (-128, 127)
  • Esimerkki:
     fun main(args : Array) ( val range: Byte = 112 println("$range") // The code below gives error. Why? // val range1: Byte = 200 )

Kun suoritat ohjelmaa, tulos on:

 112

2. Lyhyt

  • ShortTietojen tyyppi voi olla arvot -32768-32767 (16-bittisen etumerkillisen kahden komplementti kokonaisluku).
  • Sitä käytetään muiden kokonaislukutietotyyppien sijaan muistin säästämiseen, jos on varma, että muuttujan arvo on sisällä (-32768, 32767).
  • Esimerkki:
 fun main(args : Array) ( val temperature: Short = -11245 println("$temperature") )

Kun suoritat ohjelmaa, tulos on:

 -11245

3. Int

  • IntTietojen tyyppi voi olla arvot ja (32-bittisen etumerkillisen kahden komplementti kokonaisluku).-231231-1
  • Esimerkki:
 fun main(args : Array) ( val score: Int = 100000 println("$score") )

Kun suoritat ohjelmaa, tulos on:

 100000

Jos annat kokonaisluku on muuttujaan määrittämättä nimenomaisesti lajissaan, muuttuja tulee olemaan tyyppiä. Esimerkiksi,-231231-1Int

 fun main(args : Array) ( // score is of type Int val score = 10 println("$score") ) 

If you are using IntelliJ IDEA, you can place cursor inside the variable and press Ctrl + Shift + P to see its type.

4. Long

  • The Long data type can have values from -263 to 263-1 (64-bit signed two's complement integer).
  • Example:
 fun main(args : Array) ( val highestScore: Long = 9999 println("$highestScore") )

When you run the program, the output will be:

 9999

If you assign an integer value greater than 231-1 or less than -231 to a variable (without explicitly specifying its type), the variable will be of Long type. For example,

 val distance = 10000000000 // distance variable of type Long 

Similarly, you can use capital letter L to specify that the variable is of type Long. For example,

 val distance = 100L // distance value of type Long

5. Double

  • The Double type is a double-precision 64-bit floating point.
  • Example:
 fun main(args : Array) ( // distance is of type Double val distance = 999.5 println("$distance") ) 

When you run the program, the output will be:

 999.5

Float

  • The Float data type is a single-precision 32-bit floating point. Learn more about single precision and double precision floating point if you are interested.
  • Example:
 fun main(args : Array) ( // distance is of type Float val distance = 19.5F println("$distance") ) 

When you run the program, the output will be:

 19.5

Notice that, we have used 19.5F instead of 19.5 in the above program. It is because 19.5 is a Double literal, and you cannot assign Double value to a variable of type Float.

To tell compiler to treat 19.5 as Float, you need to use F at the end.

If you are not sure what number value a variable will be assigned in the program, you can specify it as Number type. This allows you to assign both integer and floating-point value to the variable (one at a time). For example:

 fun main(args : Array) ( var test: Number = 12.2 println("$test") test = 12 // Int smart cast from Number println("$test") test = 120L // Long smart cast from Number println("$test") ) 

When you run the program, the output will be:

 12.2 12 120

To learn more, visit: Kotlin smart casts

Char

To represent a character in Kotlin, Char types are used.

Unlike Java, Char types cannot be treated as numbers. Visit this page to learn more about Java char Type.

 fun main(args : Array) ( val letter: Char letter = 'k' println("$letter") ) 

When you run the program, the output will be:

 k 

In Java, you can do something like:

 char letter = 65;

However, the following code gives error in Kotlin.

 var letter: Char = 65 // Error

Boolean

  • The Boolean data type has two possible values, either true or false.
  • Example:
 fun main(args : Array) ( val flag = true println("$flag") )

Booleans are used in decision making statements (will be discussed in later chapter).

Kotlin Arrays

Taulukko on säilö, joka sisältää yhden tyyppisiä tietoja (arvoja). Voit esimerkiksi luoda taulukon, johon mahtuu 100 Inttyypin arvoa .

Kotlinissa taulukot ovat Arrayluokan edustajia . Luokalla on getja settoiminnot, sizeominaisuus ja muutama muu hyödyllinen jäsenfunktio.

Jos haluat oppia yksityiskohtaisesti matriiseista, käy Kotlin-taulukot

Kotlin-kielet

Kotlinissa merkkijonoja edustaa Stringluokka. Merkkijono-literaalit, kuten "tämä on merkkijono", toteutetaan tämän luokan esiintymänä.

Jos haluat oppia yksityiskohtaisesti jousista, vist: Kotlin Strings

Suositeltavat lukemat

  • Tyyppimuunnos Kotlinissa
  • Älykkäitä näyttelijöitä Kotlinissa
  • Kotlinin mitätöitävät tyypit

Mielenkiintoisia artikkeleita...