Key Difference – Coleção Genérica vs Não Genérica em C
Uma coleção genérica é uma classe que fornece segurança de tipo sem ter que derivar de um tipo de coleção base e implementar membros específicos do tipo. Uma coleção não genérica é uma classe especializada para armazenamento e recuperação de dados que fornece suporte para pilhas, filas, listas e tabelas de hash. A principal diferença entre Coleção Genérica e Não Genérica em C é que uma Coleção Genérica é fortemente tipada enquanto uma Coleção Não Genérica não é fortemente tipada.
O que é coleção genérica em C?
As coleções não genéricas, como ArrayList, Queue, Stack, etc.pode armazenar elementos de diferentes tipos de dados. Ao obter os itens, o programador deve digitá-los para o tipo de dados correto. Caso contrário, pode causar uma exceção de tempo de execução. As classes de coleção genéricas podem ser usadas para superar esse problema. As coleções genéricas armazenam elementos internamente em arrays de seus tipos reais. Portanto, a conversão de tipo não é necessária. Eles podem ser usados para armazenar elementos do tipo ou tipos especificados. Algumas classes de coleção genéricas são List, Dictionary, SortedList, HashSet, Queue, Stack.
A GenericList contém elementos do tipo especificado. Ele pode aumentar a lista de acordo ao adicionar elementos. Quando há uma declaração como segue, todos os elementos que podem ser armazenados na lista1 devem ser inteiros, Lista lista1 – nova Lista ();
O Dicionário Genérico em C é uma coleção de chaves e valores. Quando há uma declaração como segue, o objeto dictionary1 pode armazenar chaves de tipo int e valores de tipo string.
Dicionário dicionário1=novo Dicionário ();
Uma coleção Generic SortedList armazena pares de chave e valor em ordem crescente de chave por padrão. O exemplo abaixo armazena a chave do tipo int e o valor do tipo string.
Lista Ordenada s0=newLista Ordenada ();
Esses são alguns exemplos de Coleção Genérica em C. Essas coleções podem armazenar vários valores dos tipos de dados especificados. Então, eles são fortemente tipados.
O que é coleção não genérica em C?
Arrays podem ser usados para armazenar vários elementos. Uma desvantagem é que ele pode armazenar elementos do mesmo tipo de dados. Existem classes em C que podem ser usadas para armazenar muitos valores ou objetos conhecidos como coleções. As coleções ajudam a armazenar, atualizar, excluir, pesquisar, classificar objetos. O tamanho da coleção pode ser aumentado ou diminuído dinamicamente.
Algumas classes de coleção não genéricas são ArrayList, SortedList, Stack, Queue e HashTable. Cada classe de coleção implementa a interface IEnumerable. Isso ajuda a iterar pelos elementos dos itens na coleção usando o loop foreach.
ArrayList é uma alternativa para um array. Se houver uma matriz que possa armazenar 10 elementos, ela não poderá armazenar 20 elementos. Se a matriz foi inicializada com 10 elementos, mas armazena apenas 5 elementos, o restante não é usado. Portanto, uma matriz é fixa. Em um ArrayList, é possível adicionar ou remover elementos dependendo do índice. Permite alocação dinâmica de memória. O método sort pode ser usado para classificar os elementos em ordem crescente.
A HashTable é usada para representar uma coleção de pares chave-valor. Eles são organizados com base no hashCode da chave. Portanto, cada elemento tem um par chave-valor. A chave pode ser usada para acessar um elemento específico na coleção. A pilha representa o último acesso aos itens. A Fila é usada para acesso de itens primeiro a entrar, primeiro a sair. Essas são algumas das coleções não genéricas suportadas pelo C. Essas coleções podem armazenar elementos de diferentes tipos.
Qual é a semelhança entre coleção genérica e não genérica em C?
As coleções genéricas e não genéricas podem ser usadas para armazenar vários elementos em C
Qual é a diferença entre coleção genérica e não genérica em C?
Coleção genérica vs não genérica em C |
|
Uma coleção genérica é uma classe que fornece segurança de tipo sem ter que derivar de um tipo de coleção base e implementar membros específicos do tipo. | Uma coleção não genérica é uma classe especializada para armazenamento e recuperação de dados que fornece suporte para pilhas, filas, listas e tabelas de hash. |
Namespace | |
As classes Generic Collection estão no System. Coleções. Namespace genéricos. | As classes de coleção não genéricas estão no System. Namespace de coleções. |
Tipo | |
Uma Coleção Genérica é fortemente tipada. | Uma coleção não genérica não é fortemente tipada. |
Armazenando Elementos | |
As Coleções Genéricas armazenam elementos internamente em arrays de seus tipos reais. | As coleções não genéricas armazenam elementos internamente em arrays de objetos para que possam armazenar qualquer tipo de dado. |
Resumo – Coleção genérica vs não genérica em C
Este artigo discutiu a diferença entre coleção genérica e não genérica em C. A diferença entre Coleção Genérica e Não Genérica é que uma Coleção Genérica é fortemente tipada enquanto uma Coleção Não Genérica não é fortemente tipada.