实现Java函数来检查输入的字符串是否为数字
发布时间:2023-10-17 06:34:07
您可以使用Java内置的方法或正则表达式来检查输入的字符串是否为数字。
1. 方法1:使用Java内置的异常处理尝试将字符串转换为数字。如果转换成功,说明输入的字符串是数字,否则不是。
public static boolean isNumeric(String str) {
try {
Double.parseDouble(str);
return true;
} catch (NumberFormatException e) {
return false;
}
}
2. 方法2:使用正则表达式匹配数字的模式。如果字符串与数字模式匹配,则说明输入的字符串是数字,否则不是。
public static boolean isNumeric(String str) {
String pattern = "^[-+]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?$";
return str.matches(pattern);
}
示例用法:
public static void main(String[] args) {
String input1 = "12345";
String input2 = "12.34";
String input3 = "-45.67";
String input4 = "abcd";
System.out.println(isNumeric(input1)); // 输出: true
System.out.println(isNumeric(input2)); // 输出: true
System.out.println(isNumeric(input3)); // 输出: true
System.out.println(isNumeric(input4)); // 输出: false
}
这两种方法都可以有效地判断输入的字符串是否为数字。最终决定使用哪种方法取决于您的具体需求和对性能的要求。
