English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Kotlin程序检查字符串是否为数字

Kotlin Beispiele Sammlung

在此程序中,您将学习不同的技术来检查Kotlin中的字符串是否为数字。

Beispiel1:检查字符串是否为数字

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 ist eine Zahl")
    else
        println("$string ist keine Zahl")
}

Wenn Sie dieses Programm ausführen, lautet die Ausgabe:

12345s15 Es ist keine Zahl

在上面的程序中,我们有一个名为string的字符串,其中包含要检查的字符串。 我们还有一个布尔值numeric,用于存储最终结果是否为数字。
为了检查string是否只包含数字,在try块中,我们使用Double的parseDouble()方法将字符串转换为Double。

如果抛出错误(即NumberFormatException错误),则表示string不是数字,并设置 numeric 为false。否则,这是一个数字。

但是,如果要检查是否有一定数量的字符串,则需要将其更改为函数。而且,逻辑基于抛出异常,这可能会非常昂贵。

相反,我们可以使用正则表达式的功能来检查字符串是否为数字,如下所示。

Beispiel2:使用正则表达式(regex)检查字符串是否为数字

fun main(args: Array<String>) {
    val string = "-1234.15"
    var numeric = true
    numeric = string.matches("-?\\d+(\..\d+)?".toRegex())
    if (numeric)
        println("$string ist eine Zahl")
    else
        println("$string ist keine Zahl")
}

Wenn Sie dieses Programm ausführen, lautet die Ausgabe:

-1234.15 Es ist eine Zahl

Im obigen Programm verwenden wir regex, um zu überprüfen, ob die Zeichenfolge eine Zahl ist, anstatt try-catch-Block. Dies wurde mit dem String-matches()-Methoden erreicht.

im catch-Block. Dies wurde mit dem String-matches()-Methoden erreicht.

  • -? Erlaubt null oder größer-des Strings eine negative Zahl.

  • \d+ Überprüfen Sie, ob die Zeichenfolge mindestens enthalten muss1Stücke oder mehrere Zahlen (\d).

  • (\..\d+)? Erlaubt null oder mehrere angegebene Muster(\..\d+) wobei

    • \.. Überprüfen Sie, ob die Zeichenfolge \d enthält. (Punkt)

    • Wenn ja, dann sollte es mindestens eine oder mehrere Zahlen \d+。

Dies ist das äquivalente Java-Code:Java-Programm zum Überprüfen, ob eine Zeichenfolge eine Zahl ist

Kotlin Beispiele Sammlung