3

我通过使用将ArrayList<String> listwhich contains转换"String1""String2"String list.toString()。结果字符串格式为[String1, String2]. 有没有办法将此结果转换回ArrayList<String>

4

3 回答 3

4

尝试应用以下代码

String value = "[String1,String2,String3]";
value = value.subString(1,value.length()-1);
String[] split = value.split(",");
List<String> sampleList = Arrays.asList(split);
于 2013-10-14T07:21:42.977 回答
1

没有直接的方法。只需将该字符串[] 从字符串中删除,然后拆分,, 然后再添加回列表。

考虑到给定的格式,像这样的东西。

    String s = "[String1, String2]";
    s = s.substring(1, s.length() - 1);
    List<String> list = new ArrayList<>();
    for (String string : s.split(",")) {
        list.add(string.trim());
    }
于 2013-10-14T07:16:17.370 回答
1

创建一个新的类扩展数组列表

public class CustomArrayList<Item> extends ArrayList<Item> {

并覆盖

方法,它可以给出一个逗号分隔的字符串表示。现在使用

new CustomArrayList<Item>(Arrays.asList(list.toString().split(",")))

在 ArrayList 中取回它。

于 2013-10-14T07:18:18.073 回答