在 Java 中,我无法从 Set<Set<String>>
进行转换到 List<List<String>>
然后用 Set<Set<String>>
的内容填充此列表
这是我的代码:
Set<Set<String>> treeComps = compExtractor.transform(forest); // fine
List<List<String>> components = new List<List<String>>(); // does not work
components.addAll(treeComps); // does not work
最佳答案
你不能实例化一个List接口(interface)的实例,你需要使用像ArrayList这样的实现之一。然后你可以在 treeComps 中迭代外部集合,为每个内部集合创建一个新的 ArrayList,在这个 ArrayList 上调用 addAll,然后将列表添加到组件。
List<List<String>> components = new ArrayList<List<String>>();
for( Set<String> s : treeComps )
{
List<String> inner = new ArrayList<String>();
inner.addAll( s );
components.add( inner );
}
关于Java 将 Set<Set<String>> 转换为 List<List<String>>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12981274/