Diferencia Entre Colección Genérica Y No Genérica En C

Tabla de contenido:

Diferencia Entre Colección Genérica Y No Genérica En C
Diferencia Entre Colección Genérica Y No Genérica En C

Vídeo: Diferencia Entre Colección Genérica Y No Genérica En C

Vídeo: Diferencia Entre Colección Genérica Y No Genérica En C
Vídeo: Tutorial C# nivel Avanzado 11 --- List Genérica I 2024, Noviembre
Anonim

Diferencia clave: colección genérica frente a no genérica en C #

Una colección genérica es una clase que proporciona seguridad de tipos sin tener que derivar de un tipo de colección base e implementar miembros específicos del tipo. Una colección no genérica es una clase especializada para el almacenamiento y la recuperación de datos que proporciona soporte para pilas, colas, listas y tablas hash. La diferencia clave entre la colección genérica y no genérica en C # es que una colección genérica está fuertemente tipada mientras que una colección no genérica no está fuertemente tipada.

CONTENIDO

1. Descripción general y diferencia clave

2. Qué es la colección genérica en C #

3. Qué es la colección no genérica en C #

4. Similitudes entre la colección genérica y no genérica en C #

5. Comparación lado a lado: colección genérica frente a no genérica en C # en forma tabular

6. Resumen

¿Qué es la colección genérica en C #?

Las colecciones no genéricas como ArrayList, Queue, Stack, etc. pueden almacenar elementos de diferentes tipos de datos. Al obtener los elementos, el programador debe escribir convertirlos al tipo de datos correcto. De lo contrario, puede provocar una excepción en tiempo de ejecución. Las clases de colección genéricas se pueden utilizar para solucionar este problema. Las colecciones genéricas almacenan elementos internamente en matrices de sus tipos reales. Por lo tanto, no se requiere fundición de tipo. Se pueden utilizar para almacenar elementos del tipo o tipos especificados. Algunas clases de colección genéricas son List, Dictionary, SortedList, HashSet, Queue, Stack.

Diferencia entre colección genérica y no genérica en C #
Diferencia entre colección genérica y no genérica en C #

GenericList contiene elementos del tipo especificado. Puede aumentar la lista en consecuencia al agregar elementos. Cuando hay una declaración de la siguiente manera, todos los elementos que se pueden almacenar en la lista1 deben ser números enteros, Lista lista1 - nueva Lista ();

El diccionario genérico en C # es una colección de claves y valores. Cuando hay una declaración como la siguiente, el diccionario de objetos1 puede almacenar claves de tipo int y valores de tipo de cadena.

Diccionario diccionario1 = nuevo Diccionario ();

Una colección genérica SortedList almacena pares de clave y valor en orden ascendente de clave de forma predeterminada. El siguiente ejemplo almacena la clave de tipo int y el valor del tipo de cadena.

SortedList s0 = new SortedList ();

Estos son algunos ejemplos de colección genérica en C #. Estas colecciones pueden almacenar varios valores de los tipos de datos especificados. Entonces, están fuertemente tipados.

¿Qué es la colección no genérica en C #?

Las matrices se pueden utilizar para almacenar varios elementos. Un inconveniente es que puede almacenar elementos del mismo tipo de datos. Hay clases en C # que se pueden usar para almacenar muchos valores u objetos conocidos como colecciones. Las colecciones ayudan a almacenar, actualizar, eliminar, buscar y clasificar objetos. El tamaño de la colección se puede aumentar o disminuir de forma dinámica.

Algunas clases de colección no genéricas son ArrayList, SortedList, Stack, Queue y HashTable. Cada clase de colección implementa la interfaz IEnumerable. Ayuda a iterar a través de los elementos de los elementos de la colección utilizando el bucle foreach.

ArrayList es una alternativa a una matriz. Si hay una matriz que puede almacenar 10 elementos, no puede almacenar 20 elementos. Si la matriz se inicializó en 10 elementos pero solo almacena 5 elementos, el resto no se usa. Por lo tanto, una matriz es fija. En una ArrayList, es posible agregar o eliminar elementos según el índice. Permite la asignación de memoria dinámica. El método de clasificación se puede utilizar para clasificar los elementos en orden ascendente.

HashTable se usa para representar una colección de pares clave-valor. Están organizados según el código hash de la clave. Por tanto, cada elemento tiene un par clave-valor. La clave se puede utilizar para acceder a un elemento particular de la colección. La pila representa el último acceso a los elementos en entrar, primero en salir. La cola se utiliza para el acceso primero en entrar, primero en salir a los elementos. Esas son algunas de las colecciones no genéricas compatibles con C #. Estas colecciones pueden almacenar elementos de diferentes tipos.

¿Cuál es la similitud entre la colección genérica y no genérica en C #?

Tanto la colección genérica como la no genérica se pueden usar para almacenar varios elementos en C #

¿Cuál es la diferencia entre la colección genérica y no genérica en C #?

Diferencia del medio del artículo antes de la mesa

Colección genérica frente a no genérica en C #

Una colección genérica es una clase que proporciona seguridad de tipos sin tener que derivar de un tipo de colección base e implementar miembros específicos del tipo. Una colección no genérica es una clase especializada para el almacenamiento y la recuperación de datos que proporciona soporte para pilas, colas, listas y tablas hash.
Espacio de nombres
Las clases de Colección Genérica están en System. Colecciones. Espacio de nombres genéricos. Las clases de colección no genéricas están en el sistema. Espacio de nombres de colecciones.
Tipo
Una colección genérica está fuertemente tipificada. Una colección no genérica no está fuertemente tipada.
Almacenamiento de elementos
Las colecciones genéricas almacenan elementos internamente en matrices de sus tipos reales. Las colecciones no genéricas almacenan elementos internamente en matrices de objetos para que pueda almacenar cualquier tipo de datos.

Resumen: colección genérica frente a no genérica en C #

Este artículo analiza la diferencia entre la colección genérica y no genérica en C #. La diferencia entre colección genérica y no genérica es que una colección genérica está fuertemente tipada mientras que una colección no genérica no está fuertemente tipada.

Recomendado: