En C# la interfaz IList es una interfaz que pertenece al módulo de colección donde podemos acceder a cada elemento por índice. O podemos decir que es una colección de objetos que se utilizan para acceder a cada elemento individualmente con la ayuda de un índice. Es de tipos genéricos y no genéricos. Su implementación generalmente se clasifica en tres partes que son:
- read-only: En el que no se puede modificar el IList.
- tamaño fijo: en el que IList no puede agregar o eliminar elementos.
- tamaño variable: en el que IList puede modificar, agregar o eliminar elementos.
Sintaxis:
// For Non_generic IList public interface IList : System.Collections.ICollection // For Generic IList public interface IList<T> : System.Collections.Generic.ICollection<T>, System.Collections.Generic.IEnumerable<T>
Propiedades:
Algunas de las propiedades comúnmente utilizadas de la interfaz IList son:
Nombre de la propiedad | Descripción |
---|---|
Contar | Esta propiedad devolverá el número total de elementos presentes en la ICollection. |
EsTamañoFijo | Esta propiedad devolverá un valor que determina si IList tiene un tamaño fijo o no. |
es solo lectura | Esta propiedad devolverá un valor que determina si IList es de solo lectura o no. |
Está sincronizado | Esta propiedad devolverá un valor que determina si el acceso a ICollection está sincronizado o no. |
Artículo[Int32] | Esta propiedad obtendrá o establecerá el elemento del índice especificado. |
SyncRoot | Esta propiedad obtendrá un objeto que se puede usar para sincronizar el acceso a ICollection. |
Métodos:
Algunos de los métodos comúnmente utilizados de la interfaz IList son:
Nombre del método | Descripción |
---|---|
Agregar (Objeto) | Este método se utiliza para agregar un elemento a IList. |
Claro() | Este método se utiliza para eliminar o eliminar todos los elementos de IList. |
Contiene (Objeto) | Este método se utiliza para verificar si IList contiene un valor específico o no. |
Copiar a (array, Int32) | Este método se usa para copiar los elementos de ICollection a una array, comenzando desde el índice dado. |
ObtenerEnumerador() | Este método se usa para obtener un enumerador que itera a través de una colección. |
IndexOf(Objeto) | Este método se utiliza para encontrar el índice de un elemento específico en IList. |
Insertar (Int32, Objeto) | Este método se utiliza para insertar un elemento en IList en el índice dado. |
Eliminar (Objeto) | Este método se utiliza para quitar o eliminar la primera aparición de un objeto dado de la IList. |
Eliminar en (Int32) | Este método se utiliza para eliminar el elemento IList del índice dado. |
Ahora entendemos el funcionamiento de la interfaz IList con la ayuda de un ejemplo. En el siguiente ejemplo, creamos una lista con materias y estudiantes y mostramos la lista. Entonces, para hacer esto, tenemos que seguir el siguiente enfoque:
Acercarse:
1. Crea una variedad de temas
{"os","cn","php","c/cpp","java/jsp","python/r"}
2. Cree una lista de nombres de estudiantes y agregue nombres usando el método Add().
List<string> data = new List<string>(); data.Add("sai"); data.Add("sravan"); data.Add("jyothika");
3. Defina una interfaz IList para mostrar los nombres de los estudiantes y las materias.
static void Show(IList<string> list) { // Iterate through list foreach (string str in list) { // Print Console.WriteLine("\t" + str); } }
4. Llame al método Show() para mostrar la lista de estudiantes y materias.
Show(subjects); Show(data);
Ejemplo:
C#
// C# program to illustrate the IList interface using System; using System.Collections.Generic; class GFG{ // Show method to display the list of // subject and students name static void Show(IList<string> list) { // Iterate through the list foreach(string str in list) { Console.WriteLine("\t" + str); } } // Driver code static void Main() { // Declare a list of subjects string[] subjects = { "OS", "CN", "PHP", "C/CPP", "Java/Jsp", "Python/R" }; // Define a list List<string> data = new List<string>(); // Add students to the list data.Add("sai"); data.Add("sravan"); data.Add("jyothika"); // Display subjects Console.WriteLine("Subjects Name: "); Show(subjects); // Display students Console.WriteLine("Students Name: "); Show(data); } }
Producción:
Subjects Name: OS CN PHP C/CPP Java/Jsp Python/R Students Name: sai sravan jyothika
Publicación traducida automáticamente
Artículo escrito por saisravanprojects y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA