如何将arrayList.toString()转换为实际的arraylist
在我的软件中,由于没有输入Array
数据类型SQLite
,因此我将其另存ArrayList
为String
。现在,我需要使用数组并将其转换回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