我有这种方法
public List> ConvertReportCases (ArrayList> stats)
它是接口实现,其中返回类型是List< List< Stat>>.一般来说,如何将嵌套的ArrayList转换为Java中的List?
谢谢
编辑
感谢您的建议,我可以使我的参数作为List传递,但是由于调用者必须将其作为List传递而将是错误的,而在我的特殊情况下,我可以使用不同的版本(多态性)来检查此问题.
解决方法:
确实,不需要转换.
如果您无法触摸列表的声明,则应将方法签名更改为此.它使用wildcards.
public List extends List> convertReportCases(List extends List> stats);
但是,最干净的方法是将方法签名更改为
public List> convertReportCases(List> stats);
并将列表声明为
List> list = new ArrayList>();
for (List sublist : list) {
sublist = new ArrayList();
}
如果您使用List方法,则可以,不需要任何转换.而且由于ArrayList是-List,并且实际上仅对它的List方法有用,所以您应该没事!
标签:arraylist,java
来源: https://codeday.me/bug/20191201/2079321.html