我一直试图像这样转换字符串:" [1,2,3]"到Java中的ArrayList。 到目前为止我尝试使用GSon库将上面提到的String转换为List:
但它以异常结束(如果需要,我可以提供更多详细信息)。第一个问题应该是实际上是否是实现这种转变的好方法?
答案 0 :(得分:3)
非正则表达式方法是从字符串中删除括号,然后在逗号上拆分。然后转换为ArrayList。
String s = "[1, 2, 3]";
String[] splits = s.replace("[","").replace("]","").split(",");
ArrayList<String> arrayList = new ArrayList<>(Arrays.asList(splits));
答案 1 :(得分:0)
我建议您使用正则表达式将字符串从“[1,2,3,...]”转换为“1,2,3,...”,然后使用Arrays类的asList()方法将其转换为将其转换为List。
请参阅以下代码段
import java.util.regex.*;
...
...
String str = "[1,2,3,4,5,6,7,8,9,10]";
str = str.replaceAll("[(*)])","$1");
List<String> items = Arrays.asList(str.split("\\s*,\\s*"));