如何将arrayList.toString()转换为实际的arraylist

在我的软件中,由于没有输入Array数据类型SQLite,因此我将其另存ArrayListString。现在,我需要使用数组并将其转换回ArrayList。我该怎么做?

这是一个例子:

ArrayList<String> list = new ArrayList<String>();

list.add("name1");

list.add("name2");

list.add("name3");

list.add("name4");

list.add("name5");

list.add("name6");

String newList = list.toString();

System.out.println(newList);

结果: [name1, name2, name3, name4, name5, name6]

那么现在如何将其转换为ArrayList<String>

回答:

我相信这应该工作:

Arrays.asList(newList.substring(1, newList.length() - 1).replaceAll("\\s", "").split(","));

  • 取绳子,去掉第一个和最后一个括号。
  • 删除每个空格。
  • 以逗号分隔作为定界符,收集为列表。

请注意,如果确实必须为项目执行此操作,则代码设计中有问题。但是,如果这只是出于好奇的目的,则此解决方案将起作用。


ArrayList<String> list = new ArrayList<String>();

list.add("name1");

list.add("name2");

list.add("name3");

list.add("name4");

list.add("name5");

list.add("name6");

String newList = list.toString();

List<String> myList = Arrays.asList(newList.substring(1, newList.length() - 1).replaceAll("\\s", "").split(","));

System.out.println(myList);

将正确编译并打印:

[name1, name2, name3, name4, name5, name6]


根据您的评论,如果确实要让变量成为ArrayList<String>实例,则可以将列表传递给ArrayList构造函数:

ArrayList<String> myList = new ArrayList(Arrays.asList(newList.substring(1, newList.length() - 1).replaceAll("\\s", "").split(",")));

您不能直接Arrays.asList使用自己的内置java.util.Arrays$ArrayList类进行强制转换。

以上是 如何将arrayList.toString()转换为实际的arraylist 的全部内容, 来源链接: utcz.com/qa/430804.html

回到顶部