java判断字符串不超过三位小数
时间: 2023-06-19 09:34:43 浏览: 62
可以使用正则表达式来判断字符串是否为不超过三位小数的数字。
以下是一个示例代码:
```java
public static boolean isDecimal(String str) {
// 正则表达式,匹配数字,可以有一个小数点且小数位数不超过3位
String pattern = "^\\d+(\\.\\d{1,3})?$";
return str.matches(pattern);
}
```
使用示例:
```java
String str1 = "123.456"; // false
String str2 = "123.4"; // true
String str3 = "123"; // true
System.out.println(isDecimal(str1)); // 输出 false
System.out.println(isDecimal(str2)); // 输出 true
System.out.println(isDecimal(str3)); // 输出 true
```
注意,上面的代码假设小数点后可以有 1 到 3 位小数。如果希望小数点后只有 0 到 3 位小数,可以将正则表达式中的 `{1,3}` 改为 `{0,3}`。
相关问题
java判断字符串多少位小数
可以使用正则表达式来判断字符串中是否包含指定位数的小数。例如,以下代码可以判断一个字符串中是否包含两位小数:
```java
String str = "12.34";
if (str.matches("\\d+\\.\\d{2}")) {
System.out.println("字符串中包含两位小数");
} else {
System.out.println("字符串中不包含两位小数");
}
```
其中,正则表达式 `\\d+\\.\\d{2}` 表示匹配至少一位数字,后面跟着一个小数点和两位数字。如果需要判断不同位数的小数,只需要修改正则表达式中的 `{2}` 为相应的位数即可。
Java判断字符串小数最多只能有4位
你可以使用正则表达式来判断字符串小数的位数是否超过4位。可以使用如下代码:
```java
String str = "3.1415926";
boolean isMatch = str.matches("^\\d+(\\.\\d{1,4})?$");
if (isMatch) {
System.out.println("字符串小数位数不超过4位。");
} else {
System.out.println("字符串小数位数超过4位。");
}
```
其中,正则表达式 `^\\d+(\\.\\d{1,4})?$` 表示:
- `^` 表示字符串的开头;
- `\\d+` 表示数字,至少出现一次;
- `(\\.\\d{1,4})?` 表示小数点和小数位数,可选;
- `$` 表示字符串的结尾。
因此,该正则表达式可以匹配小数位数不超过4位的字符串。