Java判断十进制数
在计算机编程中,我们经常需要判断一个数是不是十进制数。在Java中,我们可以使用一些方法来判断一个数是不是十进制数。本文将介绍一些常用的方法,并附带代码示例。
判断是否为十进制数的方法
方法一:使用正则表达式验证
正则表达式是一种强大的模式匹配工具,可以用于判断一个字符串是否符合特定的模式。通过使用正则表达式,我们可以判断一个字符串是否只包含数字字符,从而判断它是否是十进制数。
下面是使用正则表达式判断一个字符串是否是十进制数的代码示例:
import java.util.regex.Pattern;
public class DecimalChecker {
public static boolean isDecimal(String str) {
String pattern = "^[0-9]+$";
return Pattern.matches(pattern, str);
}
public static void main(String[] args) {
String str1 = "12345";
String str2 = "12.345";
System.out.println(str1 + " is decimal? " + isDecimal(str1));
System.out.println(str2 + " is decimal? " + isDecimal(str2));
}
}
运行上述代码,输出结果为:
12345 is decimal? true
12.345 is decimal? false
方法二:使用Java自带的方法
Java提供了一些方法可以帮助我们判断一个字符串是否是十进制数。其中,NumberFormatException
类提供了一个静态方法parseInt()
,可以将一个字符串解析为整数。如果字符串不是一个有效的十进制数,会抛出NumberFormatException
异常。我们可以利用这个特性来判断一个字符串是否是十进制数。
下面是使用parseInt()
方法判断一个字符串是否是十进制数的代码示例:
public class DecimalChecker {
public static boolean isDecimal(String str) {
try {
int num = Integer.parseInt(str);
return true;
} catch (NumberFormatException e) {
return false;
}
}
public static void main(String[] args) {
String str1 = "12345";
String str2 = "12.345";
System.out.println(str1 + " is decimal? " + isDecimal(str1));
System.out.println(str2 + " is decimal? " + isDecimal(str2));
}
}
运行上述代码,输出结果为:
12345 is decimal? true
12.345 is decimal? false
序列图
下面是使用mermaid语法表示的判断十进制数的序列图:
sequenceDiagram
participant User
participant Program
User->>Program: 输入一个字符串
Program->>Program: 判断字符串是否为十进制数
alt 是十进制数
Program->>User: 返回true
else 不是十进制数
Program->>User: 返回false
end
饼状图
下面是使用mermaid语法表示的十进制数与非十进制数的比例饼状图:
pie
title 十进制数与非十进制数比例
"十进制数": 70
"非十进制数": 30
总结
本文介绍了两种常用的方法来判断一个数是否为十进制数:使用正则表达式验证和使用Java自带的方法。通过使用这些方法,我们可以方便地判断一个字符串是否是十进制数。同时,本文还展示了判断十进制数的代码示例,以及使用mermaid语法表示的序列图和饼状图。希望本文能够帮助你更好地理解和使用Java来判断十进制数。