gpt4 book ai didi

C# 方法命名约定 : ToSomething vs. AsSomething

转载 作者:IT王子 更新时间:2023-10-29 03:38:49 24 4
gpt4 key购买 nike

当我为我的业务逻辑对象编写一些扩展方法时,我遇到了重命名转换方法的问题。 someObject.ToAnotherObject() 可以与广泛使用的 object.ToString() 配合使用。

但是,例如,LINQ 混淆了这两种变体,我找不到它们之间的区别。 ToDictionary(), ToList(), AsParallel(), AsQueryable(), ...

这两种命名约定之间有什么区别,我应该知道什么来决定是否将其用于我自己的类?

最佳答案

ToDictionaryToListTo 为前缀因为它们不一定保留原始集合的结构标识或其属性。

  • 改造 List<T>进入Dictionary<K, V>创建一个具有全新结构的集合。
  • 改造 HashSet<T>进入List<T>删除集合的唯一性。

As为前缀的方法不要做任何这些事情 - 它们只是提供原始集合的替代 View 。他们丰富了它。

关于C# 方法命名约定 : ToSomething vs. AsSomething,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31875810/

24 4 0
文章推荐: c# - 在 C# 中,为什么 List 对象不能存储在 List 变量中