用JAVA 编写一个方法getNums(),传入一个字符串,提取字符串中所有的数值并返回数值列表,多个连在一起的数字可视为一个数值
时间: 2023-12-10 16:41:39 浏览: 68
可以使用正则表达式来提取字符串中的数值,具体实现如下:
```java
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class StringUtil {
public static List<Integer> getNums(String str) {
List<Integer> nums = new ArrayList<>();
Pattern pattern = Pattern.compile("\\d+");
Matcher matcher = pattern.matcher(str);
while (matcher.find()) {
nums.add(Integer.parseInt(matcher.group()));
}
return nums;
}
}
```
该方法接受一个字符串参数,使用正则表达式 `\d+` 匹配字符串中所有的数字,并将数字转换为整数类型后存入列表中返回。例如:
```java
String str = "abc123def456789ghi";
List<Integer> nums = StringUtil.getNums(str);
System.out.println(nums); // [123, 456789]
```
阅读全文