gpt4 book ai didi

c# - 将 C# 转换为 Java,如何处理 IEnumerable?

转载 作者:太空宇宙 更新时间:2023-11-03 21:47:58 25 4
gpt4 key购买 nike

我的任务是将一些 C# 代码转换为 Java。大部分都很好,但我在弄清楚如何翻译 IEnumerable 时遇到了一些问题。

我在 C# 中的代码是这样的:

public IEnumerable<Cat> Reorder(IEnumerable<Cat> catList)
{

// some logic that reorders the list

}

我的谷歌搜索建议我应该使用 Iterable<Cat>作为备选。然而,我也偶然发现了一些说你不应该拥有的东西 Iterable<T>作为返回类型。

我对 Java 中的数据结构有点陌生。我应该返回什么,您将如何重新排序对象集合?

在 C# 中,假设您不使用 linq,您将创建一个空数组或 List 或类似的,并在重复遍历它们时添加项目,检查条件。我将在 Java 中使用哪种数据结构来实现这一目标?

最佳答案

这有点取决于你想对返回值做什么。
Java 没有 LINQ,因此使用 Iterable<T>除了在 foreach 内loop 有点像 PITA。 This blog post更深入地描述了它。
另一种方法是返回 Collection<T> .
话虽如此,返回 Iterable<T>没有错,只是在某些场景下更难消费返回值。

在 Java 中,您将使用 List<T> 的实现喜欢ArrayList<T>对于方法内部的临时实例。当您想要从方法返回该实例时,返回类型将是接口(interface) List<T>Collection<T> .

关于c# - 将 C# 转换为 Java,如何处理 IEnumerable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15967511/

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