Kotlin-Variablen und Grundtypen

In diesem Tutorial erfahren Sie mehr über Variablen, deren Erstellung und grundlegende Datentypen, die Kotlin zum Erstellen von Variablen unterstützt.

Wie Sie wissen, ist eine Variable ein Speicherort (Speicherbereich) für Daten.

Um den Speicherbereich anzugeben, sollte jeder Variablen ein eindeutiger Name (Bezeichner) zugewiesen werden. Weitere Informationen zum Benennen einer Variablen in Kotlin

Wie deklariere ich eine Variable in Kotlin?

Um eine Variable in Kotlin zu deklarieren, wird entweder varoder das valSchlüsselwort verwendet. Hier ist ein Beispiel:

 var language = "Französisch" val score = 95

Der Unterschied bei der Verwendung von var und val wird später in diesem Artikel erläutert. Konzentrieren wir uns zunächst auf die Variablendeklaration.

Hier ist Sprache eine Variable vom Typ Stringund scoreeine Variable vom Typ Int. Sie müssen den Variablentyp nicht angeben. Kotlin erledigt das implizit für Sie. Der Compiler kennt dies durch den Initialisiererausdruck ("Französisch" ist ein Stringund 95 ist ein ganzzahliger Wert im obigen Programm). Dies wird in der Programmierung als Typinferenz bezeichnet.

Sie können den Typ jedoch explizit angeben, wenn Sie:

 var language: String = "French" val score: Int = 95

Wir haben die Variable während der Deklaration in den obigen Beispielen initialisiert. Dies ist jedoch nicht erforderlich. Sie können die Variable deklarieren und ihren Typ in einer Anweisung angeben und die Variable später im Programm in einer anderen Anweisung initialisieren.

 var language: String // Variablendeklaration vom Typ String… language = "French" // Variableninitialisierung val score: Int // Variablendeklaration vom Typ Int… score = 95 // Variableninitialisierung 

Hier sind einige Beispiele, die zu Fehlern führen.

 var language // Fehlersprache = "Französisch"

Hier wird der Typ der Sprachvariablen weder explizit angegeben noch während der Deklaration initialisiert.

 var language: String language = 14 // Fehler

Hier versuchen wir, Variablen unterschiedlichen Typs ( String) 14 (ganzzahliger Wert) zuzuweisen .

Unterschied zwischen var und val

  • val (unveränderliche Referenz) - Die mit dem valSchlüsselwort deklarierte Variable kann nicht geändert werden, sobald der Wert zugewiesen wurde. Es ähnelt der endgültigen Variablen in Java.
  • var (veränderbare Referenz) - Die mit dem varSchlüsselwort deklarierte Variable kann später im Programm geändert werden. Es entspricht einer regulären Java-Variablen.

Hier einige Beispiele:

 var language = "Französisch" language = "Deutsch" 

Hier wird die languageVariable dem Deutschen zugewiesen. Da die Variable mit deklariert wird var, funktioniert dieser Code einwandfrei.

 val language = "Französisch" language = "Deutsch" // Fehler

Sie können die Sprachvariable Germanim obigen Beispiel nicht neu zuweisen, da die Variable mit deklariert ist val.

Jetzt wissen Sie, was Kotlin-Variablen sind. Es ist Zeit, verschiedene Werte zu lernen, die eine Kotlin-Variable annehmen kann.

Kotlin Grundtypen

Kotlin ist eine statisch typisierte Sprache wie Java. Das heißt, der Typ einer Variablen ist während der Kompilierungszeit bekannt. Beispielsweise,

 val Sprache: Int val Marken = 12.3

Hier weiß der Compiler, dass die Sprache vom Typ Intist und die Markierungen Doublevor der Kompilierungszeit vom Typ sind .

Die in Kotlin integrierten Typen können wie folgt kategorisiert werden:

  • Zahlen
  • Zeichen
  • Boolesche Werte
  • Arrays

Nummerntyp

Zahlen in Kotlin ähneln Java. Es gibt 6 integrierte Typen, die Zahlen darstellen.

  • Byte
  • Kurz
  • Int
  • Lange
  • Schweben
  • Doppelt

1. Byte

  • Der ByteDatentyp kann Werte von -128 bis 127 haben (8-Bit-Zweierkomplement-Ganzzahl mit Vorzeichen).
  • Es wird anstelle von Intoder anderen ganzzahligen Datentypen verwendet, um Speicherplatz zu sparen, wenn sicher ist, dass der Wert einer Variablen innerhalb von (-128, 127) liegt.
  • Beispiel:
     fun main(args : Array) ( val range: Byte = 112 println("$range") // The code below gives error. Why? // val range1: Byte = 200 )

Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:

 112

2. Kurz

  • Der ShortDatentyp kann Werte von -32768 bis 32767 haben (16-Bit-Zweierkomplement-Ganzzahl mit Vorzeichen).
  • Es wird anstelle anderer ganzzahliger Datentypen verwendet, um Speicherplatz zu sparen, wenn sicher ist, dass der Wert der Variablen innerhalb von (-32768, 32767) liegt.
  • Beispiel:
 fun main(args : Array) ( val temperature: Short = -11245 println("$temperature") )

Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:

 -11245

3. Int

  • Der IntDatentyp kann Werte von bis (32-Bit-Zweierkomplement-Ganzzahl mit Vorzeichen) haben.-231231-1
  • Beispiel:
 fun main(args : Array) ( val score: Int = 100000 println("$score") )

Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:

 100000

Wenn Sie eine ganze Zahl zwischen zuweisen zu einer Variablen , ohne seinen Typ explizit anzugeben, wird die Variable sein Typ. Beispielsweise,-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

Ein Array ist ein Container, der Daten (Werte) eines einzelnen Typs enthält. Sie können beispielsweise ein Array erstellen, das 100 Typwerte enthalten kann Int.

In Kotlin werden Arrays durch die ArrayKlasse dargestellt. Die Klasse verfügt über getund setFunktionen, sizeEigenschaften und einige andere nützliche Elementfunktionen.

Weitere Informationen zu Arrays finden Sie unter: Kotlin Arrays

Kotlin Saiten

In Kotlin werden Zeichenfolgen durch die StringKlasse dargestellt. Die Zeichenfolgenliterale wie "Dies ist eine Zeichenfolge" werden als Instanz dieser Klasse implementiert.

Um mehr über Saiten zu erfahren, besuchen Sie: Kotlin Strings

Empfohlene Lektüre

  • Typkonvertierung in Kotlin
  • Smart Casts in Kotlin
  • Nullbare Kotlin-Typen

Interessante Beiträge...