226 votes

Comment convertir une chaîne en Long en Kotlin ?

Donc, en raison du manque de méthodes telles que Long.valueOf(String s) je suis bloqué.

Comment convertir un String en Long en Kotlin?

236voto

misagh Points 1

1. string.toLong()

Convertit la chaîne en un nombre [Long] et renvoie le résultat.

@throws NumberFormatException si la chaîne n'est pas une représentation valide d'un nombre.

2. string.toLongOrNull()

Convertit la chaîne en un nombre [Long] et renvoie le résultat ou null si la chaîne n'est pas une représentation valide d'un nombre.

3. string.toLong(10)

Convertit la chaîne en un nombre [Long] et renvoie le résultat.

@throws NumberFormatException si la chaîne n'est pas une représentation valide d'un nombre. @throws IllegalArgumentException lorsque [radix] n'est pas une base valide pour la conversion de chaîne en nombre.

public inline fun String.toLong(radix: Int): Long = java.lang.Long.parseLong(this, checkRadix(radix))

4. string.toLongOrNull(10)

Convertit la chaîne en un nombre [Long] et renvoie le résultat ou null si la chaîne n'est pas une représentation valide d'un nombre.

@throws IllegalArgumentException lorsque [radix] n'est pas une base valide pour la conversion de chaîne en nombre.

public fun String.toLongOrNull(radix: Int): Long? {...}

5. java.lang.Long.valueOf(string)

public static Long valueOf(String s) throws NumberFormatException

112voto

Ilya Klyuchnikov Points 936

String a une méthode d'extension correspondante :

"10".toLong()

63voto

Eric Points 2795

Les méthodes d'extension sont disponibles pour les Strings pour les parser en d'autres types primitifs. Exemples ci-dessous :

11voto

Jayson Minard Points 5925

Note : Les réponses mentionnant jet.String sont obsolètes. Voici le Kotlin actuel (1.0) :

N'importe quelle String en Kotlin a déjà une fonction d'extension que vous pouvez appeler toLong(). Rien de spécial n'est nécessaire, il suffit de l'utiliser.

Toutes les fonctions d'extension pour String sont documentées. Vous pouvez en trouver d'autres pour la bibliothèque standard dans la référence de l'api

9voto

innov8 Points 658

En fait, 90% du temps, vous devez également vérifier si le 'long' est valide, donc vous avez besoin:

"10".toLongOrNull()

Il existe un équivalent 'orNull' pour chaque 'toLong' des types de base, et ceux-ci permettent de gérer les cas invalides tout en respectant l'idiome Kotlin.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X