Kotlin - Types de base
Dans ce chapitre, nous allons découvrir les types de données de base disponibles dans le langage de programmation Kotlin.
Nombres
La représentation des nombres dans Kotlin est assez similaire à Java, cependant, Kotlin ne permet pas la conversion interne de différents types de données. Le tableau suivant répertorie différentes longueurs variables pour différents nombres.
Type | Taille |
---|---|
Double | 64 |
Flotte | 32 |
Longue | 64 |
Int | 32 |
Court | 16 |
Octet | 8 |
Dans l'exemple suivant, nous verrons comment Kotlin fonctionne avec différents types de données. Veuillez saisir l'ensemble de codes suivant dans notre base de codage.
fun main(args: Array<String>) {
val a: Int = 10000
val d: Double = 100.00
val f: Float = 100.00f
val l: Long = 1000000004
val s: Short = 10
val b: Byte = 1
println("Your Int Value is "+a);
println("Your Double Value is "+d);
println("Your Float Value is "+f);
println("Your Long Value is "+l);
println("Your Short Value is "+s);
println("Your Byte Value is "+b);
}
Lorsque vous exécutez le morceau de code ci-dessus dans le terrain de codage, il générera la sortie suivante dans la console Web.
Your Int Value is 10000
Your Double Value is 100.0
Your Float Value is 100.0
Your Long Value is 1000000004
Your Short Value is 10
Your Byte Value is 1
Personnages
Kotlin représente le personnage en utilisant char. Le caractère doit être déclaré dans un guillemet simple comme‘c’. Veuillez entrer le code suivant dans notre base de codage et voir comment Kotlin interprète la variable de caractère. La variable caractère ne peut pas être déclarée comme une variable numérique. La variable Kotlin peut être déclarée de deux manières - l'une en utilisant“var” et un autre utilisant “val”.
fun main(args: Array<String>) {
val letter: Char // defining a variable
letter = 'A' // Assigning a value to it
println("$letter")
}
Le morceau de code ci-dessus donnera la sortie suivante dans la fenêtre de sortie du navigateur.
A
Booléen
Le booléen est très simple comme les autres langages de programmation. Nous n'avons que deux valeurs pour Boolean: true ou false. Dans l'exemple suivant, nous verrons comment Kotlin interprète Boolean.
fun main(args: Array<String>) {
val letter: Boolean // defining a variable
letter = true // Assinging a value to it
println("Your character value is "+"$letter")
}
Le morceau de code ci-dessus donnera la sortie suivante dans le navigateur.
Your character value is true
Cordes
Les chaînes sont des tableaux de caractères. Comme Java, ils sont de nature immuable. Nous avons deux types de cordes disponibles dans Kotlin - l'un s'appelleraw String et un autre s'appelle escaped String. Dans l'exemple suivant, nous utiliserons ces chaînes.
fun main(args: Array<String>) {
var rawString :String = "I am Raw String!"
val escapedString : String = "I am escaped String!\n"
println("Hello!"+escapedString)
println("Hey!!"+rawString)
}
L'exemple ci-dessus de String échappé permet de fournir un espace de ligne supplémentaire après la première instruction d'impression. Voici la sortie dans le navigateur.
Hello!I am escaped String!
Hey!!I am Raw String!
Tableaux
Les tableaux sont une collection de données homogènes. Comme Java, Kotlin prend en charge des tableaux de différents types de données. Dans l'exemple suivant, nous utiliserons différents tableaux.
fun main(args: Array<String>) {
val numbers: IntArray = intArrayOf(1, 2, 3, 4, 5)
println("Hey!! I am array Example"+numbers[2])
}
Le morceau de code ci-dessus donne la sortie suivante. L'indexation du tableau est similaire à d'autres langages de programmation. Ici, nous recherchons un deuxième index, dont la valeur est «3».
Hey!! I am array Example3
Les collections
La collecte est une partie très importante de la structure des données, ce qui facilite le développement du logiciel pour les ingénieurs. Kotlin a deux types de collection - l'un estimmutable collection (ce qui signifie des listes, des cartes et des ensembles qui ne peuvent pas être modifiés) et un autre est mutable collection(ce type de collection est modifiable). Il est très important de garder à l'esprit le type de collection utilisé dans votre application, car le système Kotlin ne représente aucune différence spécifique entre eux.
fun main(args: Array<String>) {
val numbers: MutableList<Int> = mutableListOf(1, 2, 3) //mutable List
val readOnlyView: List<Int> = numbers // immutable list
println("my mutable list--"+numbers) // prints "[1, 2, 3]"
numbers.add(4)
println("my mutable list after addition --"+numbers) // prints "[1, 2, 3, 4]"
println(readOnlyView)
readOnlyView.clear() // ⇒ does not compile
// gives error
}
Le morceau de code ci-dessus donnera la sortie suivante dans le navigateur. Cela donne une erreur lorsque nous essayons d'effacer la liste mutable de la collection.
main.kt:9:18: error: unresolved reference: clear
readOnlyView.clear() // -> does not compile
^
Dans la collection, Kotlin fournit des méthodes utiles telles que first(), last(), filter(), etc. Toutes ces méthodes sont auto-descriptives et faciles à mettre en œuvre. De plus, Kotlin suit la même structure telle que Java lors de l'implémentation de la collection. Vous êtes libre de mettre en œuvre n'importe quelle collection de votre choix telle que Map et Set.
Dans l'exemple suivant, nous avons implémenté Map et Set à l'aide de différentes méthodes intégrées.
fun main(args: Array<String>) {
val items = listOf(1, 2, 3, 4)
println("First Element of our list----"+items.first())
println("Last Element of our list----"+items.last())
println("Even Numbers of our List----"+items.
filter { it % 2 = = 0 }) // returns [2, 4]
val readWriteMap = hashMapOf("foo" to 1, "bar" to 2)
println(readWriteMap["foo"]) // prints "1"
val strings = hashSetOf("a", "b", "c", "c")
println("My Set Values are"+strings)
}
Le morceau de code ci-dessus produit la sortie suivante dans le navigateur.
First Element of our list----1
Last Element of our list----4
Even Numbers of our List----[2, 4]
1
My Set Values are[a, b, c]
Gammes
Ranges est une autre caractéristique unique de Kotlin. Comme Haskell, il fournit un opérateur qui vous aide à parcourir une plage. En interne, il est implémenté en utilisantrangeTo() et sa forme d'opérateur est (..).
Dans l'exemple suivant, nous verrons comment Kotlin interprète cet opérateur de plage.
fun main(args: Array<String>) {
val i:Int = 2
for (j in 1..4)
print(j) // prints "1234"
if (i in 1..10) { // equivalent of 1 < = i && i < = 10
println("we found your number --"+i)
}
}
Le morceau de code ci-dessus produit la sortie suivante dans le navigateur.
1234we found your number --2