我有一个长度未知的字符串,如下所示
"dog, cat, bear, elephant, ..., giraffe"
在逗号处分割该字符串的最佳方式是什么,以便每个单词都可以成为ArrayList的一个元素?
例如
List<String> strings = new ArrayList<Strings>();
// Add the data here so strings.get(0) would be equal to "dog",
// strings.get(1) would be equal to "cat" and so forth.
发布于 2012-05-17 15:45:13
你可以这样做:
String str = "...";
List<String> elephantList = Arrays.asList(str.split(","));
基本上,.split()
方法将根据您传递的分隔符(在本例中)拆分字符串,并返回一个字符串数组。
但是,您需要的似乎是一个字符串列表而不是一个数组,因此必须使用Arrays.asList()
实用程序将该数组转换为一个列表。就像FYI一样,你也可以这样做:
String str = "...";
ArrayList<String> elephantList = new ArrayList<>(Arrays.asList(str.split(","));
但通常更好的做法是对接口进行编程,而不是对实际的具体实现进行编程,因此我建议使用第一种方法。
发布于 2016-01-31 16:37:13
您可以拆分它并生成一个数组,然后像数组一样进行访问
String names = "prappo,prince";
String[] namesList = names.split(",");
你可以像这样访问
String name1 = namesList [0];
String name2 = namesList [1];
或者使用循环
for(String name : namesList){
System.out.println(name);
}
希望能对你有所帮助。
发布于 2013-12-11 20:17:54
一个小的改进:上面的解决方案不会删除实际字符串中的前导或尾随空格。在调用split之前,最好先调用trim。而不是这个,
String[] animalsArray = animals.split("\\s*,\\s*");
使用
String[] animalsArray = animals.trim().split("\\s*,\\s*");
https://stackoverflow.com/questions/10631715
复制相似问题