我相信这应该工作:
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类进行强制转换。



