在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 myStr = "item1,item2,item3";
List myList = Arrays.asList(myStr.split(","));
其他回答
使用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());
没有内置的方法,但你可以简单地使用split()方法。
String commaSeparated = "item1 , item2 , item3";
ArrayList<String> items =
new ArrayList<String>(Arrays.asList(commaSeparated.split(",")));
下面是另一个转换CSV到ArrayList的例子:
String str="string,with,comma";
ArrayList aList= new ArrayList(Arrays.asList(str.split(",")));
for(int i=0;i<aList.size();i++)
{
System.out.println(" -->"+aList.get(i));
}
打印你
——>字符串 ——> ——>逗号
List<String> items = Arrays.asList(s.split("[,\\s]+"));
在Kotlin中,如果你的字符串列表像这样,你可以使用这行代码将字符串转换为数组列表
var str= "item1, item2, item3, item4"
var itemsList = str.split(", ")