在Java中是否有任何内置的方法允许我们将逗号分隔的字符串转换为一些容器(例如数组,列表或向量)?或者我需要为此编写自定义代码吗?

String commaSeparated = "item1 , item2 , item3";
List<String> items = //method that converts above string into list??

当前回答

你可以结合asList和split

Arrays.asList(CommaSeparated.split("\\s*,\\s*"))

其他回答

使用Java 8流的另外两个扩展版本如下所示

List<String> stringList1 = Arrays.stream(commaSeparated.split(",")).map(String::trim).collect(Collectors.toList());
List<String> stringList2 = Stream.of(commaSeparated.split(",")).map(String::trim).collect(Collectors.toList());
List<String> items = Arrays.asList(s.split("[,\\s]+"));

这段代码会有帮助,

String myStr = "item1,item2,item3";
List myList = Arrays.asList(myStr.split(","));

在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());

在groovy中,你可以使用tokenize(Character Token)方法:

list = str.tokenize(',')