java给定一个字符串。程序应该显示此行的描述:整数,实数,不是数字。 考虑实数的小数部分与其整数部分由小数点“.”分隔。
时间: 2023-05-11 07:02:27 浏览: 70
可以使用正则表达式来匹配字符串中的整数、实数和非数字部分。以下是示例代码:
```java
String input = "123.45 678.90 abc";
String regex = "(\\d+)|(\\d+\\.\\d+)|([^\\d\\s]+)";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);
while (matcher.find()) {
String match = matcher.group();
if (match.matches("\\d+")) {
System.out.println("整数:" + match);
} else if (match.matches("\\d+\\.\\d+")) {
System.out.println("实数:" + match);
} else {
System.out.println("非数字:" + match);
}
}
```
输出结果为:
```
整数:123
实数:45.678
非数字:abc
```
相关问题
java给定一个字符串。程序应该显示此行的描述:整数,实数,不是数字。 考虑实数的小数部分与其整数部分由小数点“.”分隔。
答案:可以使用正则表达式来匹配字符串中的数字类型。以下是一个示例代码:
```java
String input = "123.45";
if (input.matches("-?\\d+")) {
System.out.println("整数");
} else if (input.matches("-?\\d+\\.\\d+")) {
System.out.println("实数");
} else {
System.out.println("不是数字");
}
```
这个代码片段会输出 "实数",因为输入的字符串包含整数部分和小数部分,它们由小数点分隔。
阅读全文