zoukankan      html  css  js  c++  java
  • 在C#(C sharp)中数组和集合的区别及他们的初始化器

    数组和List各有偏重,怎么可以厚此而薄彼。

    《c#入门经典》第五章中描述了用值来初始化数组:

    int[] myIntArray=new int[5] {0,1,2,3,4};

    这是一种合并实例化和初始化数组的简便方式。集合初始化器只是把这个语法扩展到集合上:

    List<int> myIntCollection=new List<int> {1,2,3,4,5,6,7,1};


    数组是集合的一种。官方的说法是:
    1.集合类定义为 System.Collections 或 System.Collections.Generic 命名空间的一部分。
    2.大多数集合类都派生自 ICollection、IComparer、IEnumerable、IList、IDictionary 和 IDictionaryEnumerator 接口以及它们的等效泛型接口。

    更一般的说法是:
    “在 C# 中,集合类并非必须严格从 IEnumerable 和 IEnumerator 继承才能与 foreach 兼容;只要类有所需的 GetEnumerator、MoveNext、Reset 和 Current 成员,便可以与 foreach 一起使用。省略接口的好处为,使您可以将 Current 的返回类型定义得比 object 更明确,从而提供了类型安全。”

  • 相关阅读:
    JDK源码分析 – HashMap
    牛哄哄的celery
    redis数据库基础篇
    RPC的入门应用
    Python的常用模块
    消息队列之真知灼见
    面向对象编程(2)
    python3的C3算法
    面向对象编程(1)
    CRM项目之stark组件(2)
  • 原文地址:https://www.cnblogs.com/ssxm831/p/3574525.html
Copyright © 2011-2022 走看看