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

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

Video: Diferencia entre colección genérica y no genérica en C
Video: 5 TIPOS de COLECCIONES que DEBERÍAS Conocer en C# .NET 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 tipo 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 brinda 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.

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

Las colecciones no genéricas como ArrayList, Queue, Stack, etc.puede almacenar elementos de diferentes tipos de datos. Al obtener los elementos, el programador debe escribirlos al tipo de datos correcto. De lo contrario, puede causar una excepción de tiempo de ejecución. Las clases de colección genéricas se pueden utilizar para superar este problema. Las colecciones genéricas almacenan elementos internamente en matrices de sus tipos reales. Por lo tanto, no se requiere conversión de tipos. 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

La lista genérica contiene elementos del tipo especificado. Puede aumentar la lista en consecuencia al agregar elementos. Cuando hay una declaración como la siguiente, todos los elementos que se pueden almacenar en la lista 1 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 objeto dictionary1 puede almacenar claves de tipo int y valores de tipo cadena.

Diccionario diccionario1=nuevo Diccionario ();

Una colección Generic SortedList almacena pares de clave y valor en orden ascendente de clave de forma predeterminada. El siguiente ejemplo almacena una clave de tipo int y un valor de tipo cadena.

ListaOrdenada s0=nueva ListaOrdenada ();

Estos son algunos ejemplos de la colección genérica en C. Estas colecciones pueden almacenar múltiples valores de los tipos de datos especificados. Por lo tanto, están fuertemente tipados.

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

Las matrices se pueden usar 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 ordenar objetos. El tamaño de la colección se puede aumentar o disminuir dinámicamente.

Algunas clases de colección no genéricas son ArrayList, SortedList, Stack, Queue y HashTable. Cada clase de colección implementa la interfaz IEnumerable. Es útil iterar a través de los elementos de los elementos de la colección mediante 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, entonces el resto no se usa. Por lo tanto, una matriz es fija. En un 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.

La HashTable se usa para representar una colección de pares de valores clave. Se organizan en función del hashCode de la clave. Por lo tanto, cada elemento tiene un par de valores clave. La clave se puede utilizar para acceder a un elemento particular de la colección. La pila representa el acceso de último en entrar, primero en salir a los elementos. La cola se utiliza para el acceso de elementos por orden de entrada. 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?

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

Una colección genérica es una clase que proporciona seguridad de tipo 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 recuperación de datos que brinda soporte para pilas, colas, listas y tablas hash.
Espacio de nombres
Las clases de la Colección Genérica están en el Sistema. 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 tipada. Una colección no genérica no está fuertemente tipada.
Elementos de almacenamiento
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 puedan 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 la 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: