现在有一个字符串(注意:不是字符数组,就是一个String)— ["1002201504303120","1002201504253100","1002201504213080"]
转成List返回 ~哪位大神教教
import java.util.*;
public class Test1
{
public static void main(String[] args)
{
String str = "[\"1002201504303120\",\"1002201504253100\",\"1002201504213080\"]";
String[] s = str.split("\"");
List<String> list = new ArrayList<String>();
for(int i = 0; i < s.length ; i ++){
if(s[i].length() > 1){
list.add(s[i]);
}
}
System.out.println(list);
}
}
你可以先切割字符串,然后一个一个的添加到List里面去,
String str = “[/"1002201504303120/",/"1002201504253100/",/"1002201504213080/"]”
别忘了对引号转义。
示例代码:
String str = "[\"1002201504303120\",\"1002201504253100\",\"1002201504213080\"]";
//去掉[和]
str = str.replace("[", "").replace("]", "");
String[] values = str.split(",");
List<String> list = Arrays.asList(values);
System.out.println(list.toString());
public static void main(String[] args) {
String str = "[\"1002201504303120\",\"1002201504253100\",\"1002201504213080\"]";
Pattern p = Pattern.compile("\\d{16}");
Matcher matcher = p.matcher(str);
List<String> list = new ArrayList<>();
while(matcher.find()){
String strVal = matcher.group();
list.add(strVal);
}
if(!list.isEmpty()){
for (String s : list) {
System.out.println(s);
}
}
}
两种 做法, 一:先切割 ,切割成一个个你要的字符串 然后一个个加到List 集合里面去。
二:直接把该字符串转成String 数组 然后 直接转成List.
android
String str = “["1002201504303120","1002201504253100","1002201504213080"]"
你这个字符串是写死的么? 内部的“ 要使用\"转义
方法1
String a = ‘["1002201504303120","1002201504253100","1002201504213080"]’;
a = a.substr(1,a.length()-1);
String[] arr = a.split("\"");
List list = new ArrayList();
foreach(String b : arr){
c = b.substr(1,b.length()-1);
list.add(c);
}
方法2:
JSONArray ajarr = new JSONArray(a);
...
直接调用String的split(",")方法分割成数组,然后将数组转成list 使用Arrays.asList(数组);
http://stackoverflow.com/questions/2607289/converting-array-to-list-in-java
String str = ["1002201504303120","1002201504253100","1002201504213080"];
List<String> list = Arrays.asList(str);
首先你给的String有语法错误,如果你的String是一群由,分割的数字串的话,则需要分割成字符串数组,示例代码如下:
public static void main(String[] args) {
String str = "1002201504303120,1002201504253100,1002201504213080";
String[] values = str.split(",");
List<String> list = Arrays.asList(values);
System.out.println(list.toString());
}
不知道你用[ ]的意图是什么呢?Java的数组和List直接有工具方法可以直接调用的。但是String没有,需要解析成数组。