如何在Java中将一个字符串按照逗号、空格或多个连续空格转换成列表?有几种方式
时间: 2024-09-21 14:07:31 浏览: 47
在Java中,你可以使用`String.split()`方法来将一个字符串按照指定的分隔符(这里是逗号、空格或多个连续空格)分割成一个字符串数组,然后再将其转换为列表。以下是几种实现方式:
1. **使用正则表达式**:
```java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public List<String> splitWithRegex(String input) {
String regex = "[,\\s]+";
return Arrays.asList(input.split(regex));
}
```
在这个例子中,`[,\\s]+`匹配一个或多个逗号或空格。
2. **手动处理连续空格**:
```java
public List<String> splitWithManualSpaces(String input) {
ArrayList<String> list = new ArrayList<>();
StringBuilder sb = new StringBuilder();
for (char c : input.toCharArray()) {
if (!Character.isWhitespace(c)) {
sb.append(c);
} else if (sb.length() > 0) {
list.add(sb.toString());
sb.setLength(0);
}
}
if (sb.length() > 0) {
list.add(sb.toString());
}
return list;
}
```
这个方法逐字符遍历输入字符串,并在遇到非空白字符时添加到`StringBuilder`中,然后在遇到空格时添加现有内容到列表。
阅读全文