📜  检查字符串是否为十进制 java (1)

📅  最后修改于: 2023-12-03 14:55:45.676000             🧑  作者: Mango

检查字符串是否为十进制(Java)

在Java中,我们可以使用正则表达式来检查一个字符串是否为十进制数。以下是一个用于检查十进制数的函数:

public static boolean isDecimal(String str) {
    String decimalPattern = "^[-+]?[0-9]*\\.?[0-9]+$";
    return str.matches(decimalPattern);
}

该函数使用正则表达式 ^[-+]?[0-9]*\\.?[0-9]+$ 来检查一个字符串是否为十进制数。如果字符串符合该正则表达式,则该函数返回 true,否则返回 false

以下是该正则表达式的简单解释:

  • ^: 匹配字符串开始
  • [-+]?: 匹配一个可选的正号或负号
  • [0-9]*: 匹配零个或多个数字
  • \\.?: 匹配可选的十进制点(注意需要使用双反斜杠来表示一个反斜杠,因为反斜杠在Java中是一个特殊字符)
  • [0-9]+$: 匹配一个或多个数字,后面跟着字符串结束符 $

以下是一个使用该函数的示例:

String str1 = "123.45";
String str2 = "-123";
String str3 = "hello";
boolean isStr1Decimal = isDecimal(str1);
boolean isStr2Decimal = isDecimal(str2);
boolean isStr3Decimal = isDecimal(str3);
System.out.println(isStr1Decimal); // 输出 true
System.out.println(isStr2Decimal); // 输出 true
System.out.println(isStr3Decimal); // 输出 false

在上面的示例中,我们首先定义了三个字符串 str1str2str3,分别表示一个十进制数、一个带负号的十进制数和一个非十进制数。然后,我们使用 isDecimal 函数来检查这些字符串是否为十进制数,并将结果存储在 isStr1DecimalisStr2DecimalisStr3Decimal 变量中。最后,我们打印出这些变量的值。

以上就是Java中如何检查一个字符串是否为十进制数的介绍。