C# में List और IList के बीच मुख्य अंतर यह है कि List एक क्लास है जो इंडेक्स द्वारा एक्सेस की जा सकने वाली ऑब्जेक्ट्स की सूची को दर्शाती है जबकि IList एक इंटरफेस है जो इंडेक्स द्वारा एक्सेस की जा सकने वाली ऑब्जेक्ट्स के संग्रह को दर्शाता है। IList इंटरफेस दो इंटरफेस से लागू होता है और वे हैं ICollection और IEnumerable।
List और IList ऑब्जेक्ट्स के एक सेट को दर्शाने के लिए उपयोग किए जाते हैं। वे इंटीजर्स, स्ट्रिंग्स आदि के ऑब्जेक्ट्स को स्टोर कर सकते हैं। List या IList के तत्वों को सम्मिलित करने, हटाने, खोजने और क्रमबद्ध करने के लिए मेथड्स हैं। List और IList के बीच प्रमुख अंतर यह है कि List एक ठोस क्लास है और IList एक इंटरफेस है। कुल मिलाकर, List एक ठोस प्रकार है जो IList इंटरफेस को लागू करता है।
उदाहरण 1
using System;
using System.Collections.Generic;
namespace DemoApplication{
class Demo{
static void Main(string[] args){
IList<string> ilist = new IList<string>();
// यह त्रुटि फेंकेगा क्योंकि हम एक इंटरफेस होने के नाते IList का इंस्टेंस नहीं बना सकते।
ilist.Add("Mark");
ilist.Add("John");
foreach (string list in ilist){
Console.WriteLine(list);
}
}
}
}
उदाहरण 2
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();
}
}
}
आउटपुट
उपरोक्त कोड का आउटपुट है
Mark John Mark John