Variabile Kotlin și tipuri de bază

În acest tutorial, veți afla despre variabile, cum să le creați și tipurile de date de bază acceptate de Kotlin pentru crearea variabilelor.

După cum știți, o variabilă este o locație din memorie (zona de stocare) pentru a păstra datele.

Pentru a indica zona de stocare, fiecărei variabile i se va da un nume unic (identificator). Aflați mai multe despre Cum se numește o variabilă în Kotlin?

Cum se declară o variabilă în Kotlin?

Pentru a declara o variabilă în Kotlin, fie varsau valcuvânt cheie este utilizat. Iată un exemplu:

 var language = scor "francez" val = 95

Diferența în utilizarea var și val este discutată mai târziu în articol. Deocamdată, să ne concentrăm pe declarația variabilă.

Aici, limba este o variabilă de tip Stringși scoreeste o variabilă de tip Int. Nu trebuie să specificați tipul de variabile; Kotlin implicit face asta pentru tine. Compilatorul știe acest lucru prin expresia inițializatorului („franceza” este a String, iar 95 este o valoare întreagă în programul de mai sus). Aceasta se numește inferență de tip în programare.

Cu toate acestea, puteți specifica în mod explicit tipul dacă doriți:

 limbă var: String = scor "francez" val: Int = 95

Am inițializat variabila în timpul declarației în exemplele de mai sus. Cu toate acestea, nu este necesar. Puteți declara variabila și specifica tipul acesteia într-o instrucțiune și inițializa variabila într-o altă instrucțiune ulterior în program.

 var language: Șir // declarație variabilă de tip Șir … limbă = „franceză” // inițializare variabilă scor scor: Int // declarație variabilă de tip Int … scor = 95 // inițializare variabilă 

Iată câteva exemple care duc la erori.

 var language // Language de eroare = "franceză"

Aici, tipul variabilei de limbă nu este specificat în mod explicit și nici variabila nu este inițializată în timpul declarației.

 var language: Limbaj șir = 14 // Eroare

Aici încercăm să atribuim 14 (valoare întreagă) variabilei de tip diferit ( String).

Diferența dintre var și val

  • val (Referință imuabilă) - Variabila declarată folosind valcuvânt cheie nu poate fi modificată odată ce valoarea este atribuită. Este similar cu variabila finală din Java.
  • var (Referință mutabilă) - Variabila declarată folosind varcuvânt cheie poate fi modificată ulterior în program. Corespunde variabilei Java obișnuite.

Iată câteva exemple:

 var language = "franceză" language = "germană" 

Aici, languagevariabila este reatribuită la limba germană. Deoarece variabila este declarată folosind var, acest cod funcționează perfect.

 val language = "French" language = "German" // Eroare

Nu puteți reatribui variabila de limbă la Germanexemplul de mai sus, deoarece variabila este declarată folosind val.

Acum, știți ce sunt variabilele Kotlin, este timpul să învățați diferite valori pe care o poate lua o variabilă Kotlin.

Tipuri de bază Kotlin

Kotlin este un limbaj tipizat static ca Java. Adică, tipul unei variabile este cunoscut în timpul compilării. De exemplu,

 limbajul val: marcaje int val = 12.3

Aici, compilatorul știe că limbajul este de tip Int, iar marcajele sunt de tip Doubleînainte de timpul de compilare.

Tipurile încorporate din Kotlin pot fi clasificate ca:

  • Numere
  • Personaje
  • Booleeni
  • Matrice

Tipul numărului

Numerele din Kotlin sunt similare cu Java. Există 6 tipuri încorporate care reprezintă numere.

  • Octet
  • Mic de statura
  • Int
  • Lung
  • Pluti
  • Dubla

1. Octet

  • ByteTipul de date poate avea valori -128-127 (8-biți a semnat două lui întreg complement).
  • Este folosit în locul Intsau altor tipuri de date întregi pentru a salva memoria dacă este sigur că valoarea unei variabile va fi în (-128, 127)
  • Exemplu:
     fun main(args : Array) ( val range: Byte = 112 println("$range") // The code below gives error. Why? // val range1: Byte = 200 )

Când rulați programul, ieșirea va fi:

 112

2. Scurt

  • ShortTipul de date poate avea valori -32768-32767 (16-bit a semnat două lui întreg complement).
  • Se folosește în locul altor tipuri de date întregi pentru a salva memoria dacă este sigur că valoarea variabilei va fi în (-32768, 32767).
  • Exemplu:
 fun main(args : Array) ( val temperature: Short = -11245 println("$temperature") )

Când rulați programul, ieșirea va fi:

 -11245

3. Int

  • IntTipul de date poate avea valori de la la (32-bit a semnat două lui întreg complement).-231231-1
  • Exemplu:
 fun main(args : Array) ( val score: Int = 100000 println("$score") )

Când rulați programul, ieșirea va fi:

 100000

Dacă atribuiți un întreg între la o variabilă fără a specifica în mod explicit tipul acesteia, variabila va fi de tip. De exemplu,-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

O matrice este un container care conține date (valori) de un singur tip. De exemplu, puteți crea o matrice care poate conține 100 de valori de Inttip.

În Kotlin, matricile sunt reprezentate de Arrayclasă. Clasa are getși setfuncții, sizeproprietăți și alte câteva funcții utile ale membrilor.

Pentru a afla în detaliu despre matrice, vizitați: Matrice Kotlin

Corzi Kotlin

În Kotlin, corzile sunt reprezentate de Stringclasă. Literalele șirului, cum ar fi „acesta este un șir”, este implementat ca o instanță a acestei clase.

Pentru a afla în detaliu despre șiruri, vizitați: Kotlin Strings

Lecturi recomandate

  • Conversia tipului în Kotlin
  • Distribuții inteligente în Kotlin
  • Tipuri Kotlin anulabile

Articole interesante...