在Java中是否有任何内置的方法允许我们将逗号分隔的字符串转换为一些容器(例如数组,列表或向量)?或者我需要为此编写自定义代码吗?
String commaSeparated = "item1 , item2 , item3";
List<String> items = //method that converts above string into list??
在Java中是否有任何内置的方法允许我们将逗号分隔的字符串转换为一些容器(例如数组,列表或向量)?或者我需要为此编写自定义代码吗?
String commaSeparated = "item1 , item2 , item3";
List<String> items = //method that converts above string into list??
当前回答
你可以这样做。
这样就去掉了空白和用逗号分隔的地方,你不需要担心空白。
String myString= "A, B, C, D";
//Remove whitespace and split by comma
List<String> finalString= Arrays.asList(myString.split("\\s*,\\s*"));
System.out.println(finalString);
其他回答
在Java 8中将集合转换为逗号分隔的字符串
listOfString对象包含["A","B","C","D"]个元素-
listOfString.stream().map(ele->"'"+ele+"'").collect(Collectors.joining(","))
输出结果为:- ' A ', ' B ', ' C ', ' D '
和转换字符串数组到列表在Java 8
String string[] ={"A","B","C","D"};
List<String> listOfString = Stream.of(string).collect(Collectors.toList());
List<String> items = Arrays.asList(s.split("[,\\s]+"));
Java 9引入了List.of():
String commaSeparated = "item1 , item2 , item3";
List<String> items = List.of(commaSeparated.split(" , "));
两个步骤:
String [] = commaSeparated.split项目(“\ \ s * \ \ s *”); List<String> container = Arrays.asList(items);
List<String> items= Stream.of(commaSeparated.split(","))
.map(String::trim)
.collect(Collectors.toList());