gpt4 book ai didi

java - 将嵌套的 ArrayList 转换为 List Java

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:57:15 25 4
gpt4 key购买 nike

我有这个方法

public List<List<Stat>> ConvertReportCases (ArrayList<ArrayList<Stat>> stats)

它是一个接口(interface)实现,返回类型是List<List<Stat>>。 .通常如何在 Java 中将嵌套的 ArrayList 转换为 List?

谢谢

编辑感谢您的建议,我可以让我的参数作为 List 传递,但这样会出错,因为调用者必须将它作为 List 传递,而在我的特定情况下,我可以有不同的版本(多态性)来检查这个问题。

最佳答案

真的,不需要转换。

如果不能触及列表的声明,应该把方法签名改成这个。它使用 wildcards .

public List<? extends List<Stat>> convertReportCases(List<? extends List<Stat>> stats);

但是,最干净的方法是将方法签名更改为

public List<List<Stat>> convertReportCases(List<List<Stat>> stats);

并将列表声明为

List<List<Stat>> list = new ArrayList<List<Stat>>();
for (List<Stat> sublist : list) {
sublist = new ArrayList<Stat>();
}

如果你使用 List 方法,你会没事的,不需要转换。因为 ArrayList 是一个 List 并且实际上只对它的 List 方法有用,所以你应该没问题!

关于java - 将嵌套的 ArrayList 转换为 List Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10910312/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com