C# 使用 IList 代替 List

发布于 2024-11-27 01:29:54 字数 247 浏览 4 评论 0原文

可能的重复:
C# - 列表或 IList

我正在研究一个解决方案,注意到有很多 IList 正在实现。 只是想知道,当您可以使用 List 时,使用 IList 有何意义?

Possible Duplicate:
C# - List<T> or IList<T>

I'm working on a solution have noticed there is a lot fo IList being implemented.
Just wondering, what is the point of using an IList when you can use a List?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

度的依靠╰つ 2024-12-04 01:29:54

因为某些集合可能继承自 IList 而不是 List,例如 ObservableCollection。

Because some collections may inherit from IList and not from List, ObservableCollection for example.

黒涩兲箜 2024-12-04 01:29:54

如果您不想继承List而只想实现接口,请使用IList

也许您想返回一个支持IList的对象,但实现与调用者无关?

在您的情况下,实现 IList 可能会导致不必要的输入,这可能是正确的做法,如果没有更多信息,我无法知道。

If you want don't want to inherit List and just want to implement the interface use IList.

Perhaps you want to return an object that supports IList but the implementation is irrelavant to the caller?

In your case implementing IList may result in unesscessary typing, it may be right thing to do, I' can't know without more info.

薄荷→糖丶微凉 2024-12-04 01:29:54

您应该始终尝试尽可能使用界面,以使用户能够更灵活地选择他们使用的实现。一般来说,IEnumerableIQueryable 甚至比 IList 更好,因为它们更通用,当然,除非您想有充分的理由限制它。

You should always try to use the interface where possible to allow the user to have more flexibility on which implementation they use. Generally, IEnumerable and IQueryable are even better than IList as they're more generic, unless you want to limit this with good reason of course.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文