English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Recopilación de ejemplos de Kotlin
En este programa, aprenderás diferentes técnicas para verificar si una cadena es un número en Kotlin.
import java.lang.Double.parseDouble fun main(args: Array<String>) { val string = "12345s15" var numeric = true try { val num = parseDouble(string) } catch (e: NumberFormatException) { numeric = false } if (numeric) println("$string es un número") else println("$string no es un número") }
Al ejecutar el programa, la salida es:
12345s15 No es un número
En el programa anterior, tenemos una cadena llamada string que contiene la cadena a verificar. También tenemos un valor booleano numeric que almacena el resultado final de si es un número o no.
Para verificar si string contiene solo números, usamos el método parseDouble() de Double en un bloque try.
Si se lanza un error (es decir, un error NumberFormatException), significa que string no es un número y se establece numeric en false. De lo contrario, es un número.
Pero, si queremos verificar una cantidad específica de cadenas, debemos convertirla en una función. Y, la lógica se basa en lanzar excepciones, lo que puede ser muy costoso.
Por el contrario, podemos usar las funciones de las expresiones regulares para verificar si una cadena es un número, como se muestra a continuación.
fun main(args: Array<String>) { val string = "-1234.15" var numeric = true numeric = string.matches("-?\\d+(\\.\\d+)?".toRegex()) if (numeric) println("$string es un número") else println("$string no es un número") }
Al ejecutar el programa, la salida es:
-1234.15 Es un número
En el programa anterior, utilizamos regex para verificar si el string es un número, en lugar de usar try-catch. Esto se realiza utilizando el método matches () de String.
en el bloque catch. Esto se realiza utilizando el método matches () de String.
-? Permite cero o más-número negativo en la cadena.
\\d+ Verifique que la cadena contenga al menos1número o más números (\\d)。
(\\.\\d+)? Permite cero o más patrones dados (\\.\\d+) donde
\\d
Si es así, debe seguir al menos un número o varios números \\d+。
Este es el código Java equivalente:Programa Java para verificar si una cadena es un número。