U ovom vodiču naučit ćete o varijablama, kako ih stvoriti i osnovnim vrstama podataka koje Kotlin podržava za stvaranje varijabli.
Kao što znate, varijabla je mjesto u memoriji (spremište) za čuvanje podataka.
Da bi se naznačilo područje pohrane, svakoj varijabli treba dati jedinstveni naziv (identifikator). Saznajte više o Kako imenovati varijablu u Kotlinu?
Kako proglasiti varijablu u Kotlinu?
Za deklariranje varijable u Kotlinu koristi se ili var
ili val
ključna riječ. Evo primjera:
var jezik = "francuski" val ocjena = 95
Razlika u korištenju var i val raspravlja se kasnije u članku. Za sada se usredotočimo na deklaraciju varijabli.
Ovdje je jezik varijabla tipa String
i score
varijabla je tipa Int
. Ne morate navesti vrstu varijabli; Kotlin to implicitno čini umjesto vas. Prevodnik to zna po izrazu inicijalizatora ("francuski" je a String
, a 95 je cijela vrijednost u gore navedenom programu). To se u programiranju naziva zaključivanjem tipa.
Međutim, možete izričito navesti vrstu ako želite:
var jezik: String = "francuski" val ocjena: Int = 95
Inicijalizirali smo varijablu tijekom deklaracije u gornjim primjerima. Međutim, nije potrebno. Možete deklarirati varijablu i odrediti njezin tip u jednom izrazu, a inicijalizirati varijablu u drugom izrazu kasnije u programu.
var jezik: String // deklaracija varijable tipa String … jezik = "francuski" // inicijalizacija varijable val score: Int // deklaracija varijable tipa Int … score = 95 // inicijalizacija varijable
Evo nekoliko primjera koji dovode do pogreške.
var jezik // jezik pogreške = "francuski"
Ovdje vrsta jezične varijable nije izričito navedena, niti je varijabla inicijalizirana tijekom deklaracije.
var jezik: Jezični niz = 14 // Pogreška
Ovdje pokušavamo dodijeliti 14 (cijelu vrijednost) varijabli različitog tipa ( String
).
Razlika između var i val
- val (Nepromjenjiva referenca) - Varijabla deklarirana pomoću
val
ključne riječi ne može se mijenjati kada se dodijeli vrijednost. Slična je završnoj varijabli u Javi. - var (Promjenjiva referenca) - Varijabla deklarirana pomoću
var
ključne riječi može se kasnije promijeniti u programu. Odgovara redovitoj Java varijabli.
Evo nekoliko primjera:
var jezik = "francuski" jezik = "njemački"
Ovdje je language
varijabla preraspoređena u njemački. Budući da je varijabla deklarirana pomoću var
, ovaj kod savršeno funkcionira.
val jezik = "francuski" jezik = "njemački" // Pogreška
German
U gornjem primjeru ne možete ponovo dodijeliti jezičnu varijablu jer je varijabla deklarirana pomoću val
.
Sad, znate što su Kotlin varijable, vrijeme je da naučite različite vrijednosti koje Kotlin varijabla može uzeti.
Kotlin osnovne vrste
Kotlin je statički otkucan jezik poput Jave. Odnosno, vrsta varijable poznata je tijekom vremena kompajliranja. Na primjer,
val jezik: Int val oznake = 12,3
Ovdje prevodilac zna da je jezik tipa Int
, a oznake tipa Double
prije vremena sastavljanja.
Ugrađeni tipovi u Kotlinu mogu se kategorizirati kao:
- Brojevi
- Likovi
- Booleovi
- Nizovi
Tip broja
Brojevi u Kotlinu slični su Javi. Postoji 6 ugrađenih vrsta koje predstavljaju brojeve.
- Bajt
- Kratak
- Int
- Dugo
- Plutati
- Dvostruko
1. Bajt
- Tip
Byte
podataka može imati vrijednosti od -128 do 127 (8-bitni cijeli komplement s potpisom dvojke). - Koristi se umjesto
Int
ili drugih cjelobrojnih vrsta podataka za spremanje memorije ako je sigurno da će vrijednost varijable biti unutar (-128, 127) - Primjer:
fun main(args : Array) ( val range: Byte = 112 println("$range") // The code below gives error. Why? // val range1: Byte = 200 )
Kada pokrenete program, izlaz će biti:
112
2. Kratko
- Tip
Short
podataka može imati vrijednosti od -32768 do 32767 (16-bitni cjeloviti komplement s potpisom dvojke). - Koristi se umjesto ostalih cjelovitih vrsta podataka za spremanje memorije ako je sigurno da će vrijednost varijable biti unutar (-32768, 32767).
- Primjer:
fun main(args : Array) ( val temperature: Short = -11245 println("$temperature") )
Kada pokrenete program, izlaz će biti:
-11245
3. Int
- Vrsta
Int
podataka može imati vrijednosti od do (32-bitni cijeli komplement s potpisom dvojke).-231
231-1
- Primjer:
fun main(args : Array) ( val score: Int = 100000 println("$score") )
Kada pokrenete program, izlaz će biti:
100000
Ako varijabli dodijelite cijeli broj između, a da niste izričito naveli njezin tip, varijabla će biti tipa. Na primjer,-231
231-1
Int
fun main(args : Array) ( // score is of type Int val score = 10 println("$score") )
Ako koristite IntelliJ IDEA, možete postaviti pokazivač unutar varijable i pritisnuti Ctrl + Shift + P
da biste vidjeli njezinu vrstu.
4. Dugo
- Tip
Long
podataka može imati vrijednosti od do (64-bitni cjeloviti komplement s potpisom dvojke).-263
263-1
- Primjer:
fun main(args : Array) ( val highestScore: Long = 9999 println("$highestScore") )
Kada pokrenete program, izlaz će biti:
9999
Ako varijabli dodijelite cijelu vrijednost veću ili manju od (bez izričitog navođenja njezina tipa), varijabla će biti tipa. Na primjer,231-1
-231
Long
val udaljenost = 10000000000 // varijabla udaljenosti tipa Long
Slično tome, velikim početnim slovom L možete odrediti je li varijabla tipa Long
. Na primjer,
val udaljenost = 100L // vrijednost udaljenosti tipa Long
5. Dvostruko
Double
Tip je dvostruko preciznost 64-bitni s pomičnim zarezom.- Primjer:
fun main(args : Array) ( // distance is of type Double val distance = 999.5 println("$distance") )
Kada pokrenete program, izlaz će biti:
999,5
Plutati
- 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, eithertrue
orfalse
. - 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
Niz je spremnik koji sadrži podatke (vrijednosti) jednog pojedinog tipa. Na primjer, možete stvoriti niz koji može sadržavati 100 vrijednosti Int
tipa.
U Kotlinu su nizovi predstavljeni Array
klasom. Klasa ima get
i set
funkcije, size
svojstvo i nekoliko drugih korisnih funkcija člana.
Da biste detaljno saznali o nizovima, posjetite: Kotlinovi nizovi
Kotlinske žice
U Kotlinu žice predstavljaju String
klasa. Znakovni niz kao što je "ovo je niz" implementiran je kao instanca ove klase.
Da biste detaljno saznali o žicama, vist: Kotlin Strings
Preporučena čitanja
- Pretvorba tipa u Kotlinu
- Pametne uloge u Kotlinu
- Kotlin zanirive vrste