亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C#中IList 與 List 的區(qū)別小結(jié)

 更新時間:2024年04月15日 09:17:38   作者:那個那個魚  
IList 接口和 List 類是 C# 中用于集合操作的兩個重要的類型,本文主要介紹了C#中IList 與 List 的區(qū)別小結(jié),具有一定的參考價(jià)值,感興趣的可以了解一下

IList 接口和 List 類是 C# 中用于集合操作的兩個重要的類型。

它們之間的區(qū)別如下:

1. 定義和實(shí)現(xiàn)方式:

IList 接口是一個抽象接口,定義了一組用于操作列表的方法和屬性。它是 System.Collections 命名空間中的一部分,可以被其他類實(shí)現(xiàn)。
List 類是 IList 接口的一個具體實(shí)現(xiàn),它提供了 IList 接口中定義的所有方法和屬性的具體實(shí)現(xiàn)。List 類位于 System.Collections.Generic 命名空間中。

2. 泛型支持:

IList 接口是非泛型接口,它可以存儲任意類型的對象。
List 類是泛型類,它可以指定存儲的元素類型,并在編譯時進(jìn)行類型檢查,提供更好的類型安全性。

3. 功能和性能:

IList 接口定義了一組基本的列表操作方法,如添加、刪除、插入、索引訪問等。它提供了對列表的基本操作支持,但不提供具體的實(shí)現(xiàn)。
List 類在 IList 接口的基礎(chǔ)上提供了更多的功能和性能優(yōu)化。它使用動態(tài)數(shù)組來存儲元素,可以高效地進(jìn)行插入、刪除和索引訪問操作。此外,List 類還提供了一些額外的方法,如排序、查找等。

錯誤使用案例

using System;
using System.Collections.Generic;
namespace DemoApplication{
   class Demo{
      static void Main(string[] args){
         IList<string> ilist = new IList<string>();
         //This will throw error as we cannot create instance for an IList as it is an interface.
         ilist.Add("Mark");
         ilist.Add("John");
         foreach (string list in ilist){
            Console.WriteLine(list);
         }
      }
   }
}

下面的是正確案例

using System;
using System.Collections.Generic;
namespace DemoApplication{
   class Demo{
      static void Main(string[] args){
         IList<string> ilist = new List<string>();
         ilist.Add("Mark");
         ilist.Add("John");
         List<string> list = new List<string>();
         ilist.Add("Mark");
         ilist.Add("John");
         foreach (string lst in ilist){
            Console.WriteLine(lst);
         }
         foreach (string lst in list){
            Console.WriteLine(lst);
         }
         Console.ReadLine();
      }
   }
}

List轉(zhuǎn)IList的方法

/// <summary>
/// List轉(zhuǎn)IList公共方法
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="listObjects"></param>
/// <returns></returns>
protected static IList<T> ConvertToGenericList<T>(IList listObjects)
{
      IList<T> convertedList = new List<T>(listObjects.Count);
 
      foreach (object listObject in listObjects)
      {
           convertedList.Add((T)listObject);
      }
 
      return convertedList;
}

總結(jié):

  • IList 接口是一個抽象的列表操作接口,可以被其他類實(shí)現(xiàn)。
  • List 類是 IList 接口的一個具體實(shí)現(xiàn),提供了更多的功能和性能優(yōu)化。

到此這篇關(guān)于C#中IList 與 List 的區(qū)別小結(jié)的文章就介紹到這了,更多相關(guān)C# IList List 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • C#操作字符串方法總結(jié)實(shí)例代碼

    C#操作字符串方法總結(jié)實(shí)例代碼

    這篇文章主要介紹了C#操作字符串方法總結(jié)實(shí)例代碼,需要的朋友可以參考下
    2017-10-10
  • C#實(shí)現(xiàn)多線程編程的簡單案例

    C#實(shí)現(xiàn)多線程編程的簡單案例

    這篇文章介紹了C#實(shí)現(xiàn)多線程編程的簡單案例,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • 詳解C# FileStream類

    詳解C# FileStream類

    這篇文章主要介紹了詳解C# FileStream類的相關(guān)知識,文中講解的非常細(xì)致,代碼供大家參考和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • C#圖像對比度調(diào)整的方法

    C#圖像對比度調(diào)整的方法

    這篇文章主要介紹了C#圖像對比度調(diào)整的方法,涉及C#實(shí)現(xiàn)圖像對比度操作的相關(guān)技巧,需要的朋友可以參考下
    2015-04-04
  • 詳解WPF中的對象資源

    詳解WPF中的對象資源

    這篇文章主要介紹了WPF中對象資源的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用WPF,感興趣的朋友可以了解下
    2021-04-04
  • Unity UGUI實(shí)現(xiàn)簡單拖拽圖片功能

    Unity UGUI實(shí)現(xiàn)簡單拖拽圖片功能

    這篇文章主要為大家詳細(xì)介紹了Unity UGUI實(shí)現(xiàn)簡單拖拽圖片功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • WCF實(shí)現(xiàn)的計(jì)算器功能實(shí)例

    WCF實(shí)現(xiàn)的計(jì)算器功能實(shí)例

    這篇文章主要介紹了WCF實(shí)現(xiàn)的計(jì)算器功能,結(jié)合具體實(shí)例形式較為詳細(xì)的分析了WCF實(shí)現(xiàn)計(jì)算器功能的具體步驟與相關(guān)操作技巧,需要的朋友可以參考下
    2017-06-06
  • C# Winform程序?qū)崿F(xiàn)防止多開的方法總結(jié)【親測】

    C# Winform程序?qū)崿F(xiàn)防止多開的方法總結(jié)【親測】

    這篇文章主要介紹了C# Winform程序?qū)崿F(xiàn)防止多開的方法,結(jié)合實(shí)例形式總結(jié)分析了C# Winform防止多開相關(guān)操作技巧與使用注意事項(xiàng),需要的朋友可以參考下
    2020-03-03
  • c++函數(shù)轉(zhuǎn)c#函數(shù)示例程序分享

    c++函數(shù)轉(zhuǎn)c#函數(shù)示例程序分享

    這篇文章主要介紹了c++函數(shù)轉(zhuǎn)c#函數(shù)示例程序,大家參考使用吧
    2013-12-12
  • SQL Server存儲過程在C#中調(diào)用的簡單實(shí)現(xiàn)方法

    SQL Server存儲過程在C#中調(diào)用的簡單實(shí)現(xiàn)方法

    這篇文章主要給大家介紹了關(guān)于SQL Server存儲過程在C#中調(diào)用的簡單實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用SQL Server存儲過程具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05

最新評論