gpt4 book ai didi

c# - 将 List 分配给 IEnumerable 是否有益?

转载 作者:行者123 更新时间:2023-11-30 17:50:45 26 4
gpt4 key购买 nike

我使用的语言是C#。

说一个对象的方法返回一个List<int> .如果我们将此结果分配给类型为 IEnumerable<int> 的变量我们是否会受益?

换句话说

IEnumerable<int> result = list

优于

List<int> result = list ,

哪里listList<int> .

我凭直觉认为我们不会有任何好处。但是,我想确定一下。所以我问这个。

最佳答案

缺点是您将无法使用 List<T>具体方法。好处是您将能够将返回列表的方法中的实现更改为另一种列表(或集合或...),因为您唯一需要的是 IEnumerable<T> .

妥协是 IList<T>如果你需要类似 Add 的方法.

而且,返回List<T>也不是一个好主意。从一个方法。如果你是该方法的实现者,那么你至少应该返回 IList<T>或者甚至 IEnumerable<T> .

一般情况下,您必须转换为基类型,参见new keyword in method signature .

关于c# - 将 List<int> 分配给 IEnumerable<int> 是否有益?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20357998/

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