• C#中 IEnumerable, ICollection, IList, List的使用


    List是類,實現了IList接口,IList繼承了ICollection,ICollection繼承了IEnumerable,IEnumerable是其中最底層的接口。

    實現IEnumerable接口的類,可以使用foreach進行循環讀取。

    實現ICollection接口的類,除了可以使用foreach讀取外,還可以直接讀取長度Count

    實現IList接口的類,功能較強大,可以使用Add, Remove, Clear, Contain等method.

    在傳遞function的參數時,可以使用接口類來提供靈活性。

    例如,

            private static void WriteContent(ICollection content)
            {
                foreach (var element in content)
                {
                    if (element.GetType() == typeof(string))
                        Console.WriteLine(Convert.ToString(element));
                    if (element.GetType() == typeof(int))
                        Console.WriteLine(Convert.ToInt32(element) + 1);
                }
            }
    
            WriteContent(new List<string>() { "abc", "bcd", "def"});
            WriteContent(new List<int>() { 4, 5, 6});
            WriteContent(new string[] { "qwe", "wer", "ert"});
            WriteContent(new int[] { 7, 8, 9});

    注意,當使用IList來接收參數傳遞時,如果傳進來的是一個Array, 在function內部使用add, remove方法時,會有Exception.

  • 相关阅读:
    (三)通用定时器的定时功能(不使用中断)
    (二)STM32中中断优先级理解
    (一)通用定时器的相关介绍
    Ambari client
    Ambari的资源池管理
    Sentry的授权模型
    关于yum
    Ambari-HDP
    Ambari的API调用
    CentOS上面搭建SVN服务器
  • 原文地址:https://www.cnblogs.com/sipher/p/11046471.html
Copyright © 2020-2023  润新知