Ebben az oktatóanyagban megismerheti a változókat, azok létrehozását és az alapvető adattípusokat, amelyeket a Kotlin támogat a változók létrehozásához.
Mint tudják, a változó egy hely a memóriában (tárolási terület), ahol az adatok tárolhatók.
A tárolási terület megjelöléséhez minden változónak egyedi nevet (azonosítót) kell adni. Tudjon meg többet arról, hogyan nevezhetünk változót Kotlinban?
Hogyan deklarálhatunk változót Kotlinban?
Egy változó deklarálásához Kotlinban a vagy a var
vagy val
kulcsszót kell használni. Íme egy példa:
var language = "francia" val score = 95
A var és val használatának különbségét a cikk később tárgyalja. Most összpontosítsunk a változó deklarációra.
Itt a nyelv típusváltozó String
, és score
típusváltozó Int
. Nem kell megadnia a változók típusát; Kotlin ezt hallgatólagosan megteszi helyetted. A fordító ezt inicializáló kifejezéssel tudja (a "francia" a String
, a 95 pedig egész szám a fenti programban). Ezt a programozásban típus következtetésnek nevezzük.
Mindazonáltal kifejezetten megadhatja a típust, ha:
var nyelv: húr = "francia" val pontszám: Int = 95
A fenti példákban a deklarálás során inicializáltuk a változót. Ez azonban nem szükséges. Deklarálhatja a változót és megadhatja annak típusát egy utasításban, és inicializálhatja a változót egy másik utasításban a program későbbi részében.
var nyelv: String // változó típusú deklaráció String… language = "French" // változó inicializálása val score: Int // Int típusú változó deklaráció … score = 95 // változó inicializálása
Íme néhány példa, amelyek hibát eredményeznek.
var language // Hiba language = "francia"
Itt a nyelvi változó típusa nincs kifejezetten megadva, és a változó sem inicializálódik a deklarálás során.
var language: String language = 14 // Hiba
Itt megpróbálunk 14-et (egész szám) rendelni a különböző típusú ( String
) változókhoz .
Különbség a var és a val között
- val (Megváltoztathatatlan hivatkozás) - A
val
kulcsszóval deklarált változó nem módosítható az érték hozzárendelése után. Hasonló a Java végső változójához. - var (Mutábilis hivatkozás) - A
var
kulcsszóval deklarált változó később módosítható a programban. Megfelel a szokásos Java változónak.
Íme néhány példa:
var language = "francia" language = "német"
Itt a language
változó átrendeződik a németre. Mivel a változó használatával van deklarálva var
, ez a kód tökéletesen működik.
val language = "francia" language = "német" // Hiba
A German
fenti példában nem rendelhető hozzá nyelvi változó a következőhöz : a változó használatával van deklarálva val
.
Most már tudja, mi a Kotlin-változó, itt az ideje megtanulni a Kotlin-változó különböző értékeit.
Kotlin alaptípusok
A Kotlin egy statikusan tipizált nyelv, mint a Java. Vagyis a változó típusa ismert a fordítási idő alatt. Például,
val nyelv: Int val jelek = 12.3
Itt a fordító tudja, hogy a nyelv típusa Int
, és a jelek típusa Double
a fordítási idő előtt.
A kotlini beépített típusok a következőkbe sorolhatók:
- Számok
- Karakterek
- Booleans
- Tömbök
Szám típusa
A kotlini számok hasonlóak a Java-hoz. 6 beépített típus képviseli a számokat.
- Byte
- Rövid
- Int
- Hosszú
- Úszó
- Kettős
1. Bájt
- Az
Byte
adattípus értéke -128 és 127 között lehet (8 bites előjelű két komplemens egész szám). Int
Más egész típusú adattípusok helyett memória mentésére szolgál, ha biztos, hogy egy változó értéke belül lesz (-128, 127)- Példa:
fun main(args : Array) ( val range: Byte = 112 println("$range") // The code below gives error. Why? // val range1: Byte = 200 )
A program futtatásakor a kimenet a következő lesz:
112
2. Rövid
- Az
Short
adattípus értéke lehet -32768 és 32767 között (16 bites előjelű két komplemens egész szám). - Más egész típusú adattípusok helyett memória mentésére szolgál, ha biztos, hogy a változó értéke belül lesz (-32768, 32767).
- Példa:
fun main(args : Array) ( val temperature: Short = -11245 println("$temperature") )
A program futtatásakor a kimenet a következő lesz:
-11245
3. Int
- Az
Int
adattípus értéke lehet (32 bites előjelű kettő egészének egésze).-231
231-1
- Példa:
fun main(args : Array) ( val score: Int = 100000 println("$score") )
A program futtatásakor a kimenet a következő lesz:
100000
Ha hozzá közötti egész , hogy egy változó nem adta meg egyértelműen annak típusát, a változó lesz a típus. Például,-231
231-1
Int
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
to263-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, 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
A tömb egy olyan tároló, amely egyetlen típusú adatot (értékeket) tartalmaz. Például létrehozhat egy tömböt, amely 100 Int
típusú értéket képes tárolni .
Kotlinban a tömböket az Array
osztály képviseli . Az osztályban van get
és set
funkciókat, size
tulajdon, és még néhány egyéb hasznos tagja funkciókat.
Ha többet szeretne megtudni a tömbökről, látogasson el ide: Kotlin tömbök
Kotlin húrok
Kotlinban a húrokat az String
osztály képviseli . Azok a karakterlánc-literálok, mint az "ez egy karakterlánc", ennek az osztálynak a példányaként valósulnak meg.
Ha részletesen meg szeretné tudni a húrokat, látogassa meg: Kotlin Strings
Ajánlott olvasmányok
- Típusátalakítás Kotlinban
- Okos stábok Kotlinban
- Kotlin semmisséges típusok