在列表类型之间转换,java

在列表类型之间转换,java,java,list,Java,List,因此,我正在编写一个返回List的方法。但是,我在方法中列出的列表是list。我想知道除了删除“顶点”部分之外,是否还有其他方法可以将List转换为List,以匹配返回类型。谢谢 简而言之,答案是否定的,单靠“铸造”是无法解决这个问题的。 V与Vertex不同,因此您需要一种从每个Vertex对象中提取V对象的方法。如果您使用的是java 8,有一种简单的方法可以将集合映射到不同类型的集合,只需编写: list.stream().map(vertex -> vertex.get()).co

因此,我正在编写一个返回
List
的方法。但是,我在方法中列出的列表是
list
。我想知道除了删除“顶点”部分之外,是否还有其他方法可以将
List
转换为
List
,以匹配返回类型。谢谢

简而言之,答案是否定的,单靠“铸造”是无法解决这个问题的。
V
Vertex
不同,因此您需要一种从每个
Vertex
对象中提取
V
对象的方法。

如果您使用的是java 8,有一种简单的方法可以将集合映射到不同类型的集合,只需编写:

list.stream().map(vertex -> vertex.get()).collect(Collectors.toList());     

vertex.get()
应该是任何获取
vertex
并将其转换为
V

的代码。您可以从vertex将自定义代码写入getV(),然后将V添加到不同的列表中,但除非vertex扩展了V,否则您不能强制转换它,在您的情况下,我认为它不会扩展V。您还可以执行
映射(vertex::get)
而不是
映射(顶点->顶点.get())