Matrizes x listas: comparação de uso em C#

Matrizes X Listas Comparacao De Uso Em C



Um array em C# é um conjunto de itens com tipos de dados idênticos e um tamanho específico definido. Representa um pedaço adjacente de memória onde os elementos são salvos. Utilizando seu índice, os arrays em C# oferecem um acesso arbitrário rápido e fácil aos seus membros. Uma lista é uma estrutura de dados dinâmica na linguagem de programação C# que representa um grupo de componentes de tipo idêntico. Ao contrário dos arrays, as listas podem aumentar ou diminuir de tamanho dinamicamente, o que permite a adição, remoção e modificação eficiente de elementos. As semelhanças e distinções entre matrizes C# e listas C# são abordadas neste artigo.

Declaração:

Arrays são declarados usando “type[] ArrayName;” sintaxe onde o tipo significa o tipo dos membros na coleção de array e “ArrName” é o título atribuído ao array. Uma declaração de uma matriz é indicada por colchetes [].

tipo [ ] ArrayName = novo tipo [ ] ;

As listas são declaradas usando “List LsName;” sintaxe onde o tipo representa o tipo de dados dos elementos da lista e “LsName” é o nome dado à lista. Os colchetes angulares indicam que é uma declaração de tipo genérico.







Lista < tipo > lista de nomes = nova lista < tipo > ( ) ;

Inicialização:

Matrizes usam chaves {} para delimitar os valores, enquanto as listas usam o novo construtor List seguido por chaves {} para delimitar os valores.



tipo [ ] ArrayName = { v1 , v2 , v3 , ... } ;

Lista < tipo > lista de nomes = nova lista < tipo > { v1 , v2 , v3 , ... } ;

Adicionando Valores:

É crucial lembrar que os arrays C# possuem um tamanho específico. Se for necessário um tamanho diferente, um novo array “newArr” precisa ser criado com o tamanho desejado (comprimento atual + número de novos valores). Adicione o array original “OrgArr” ao novo array e atribua os novos valores às novas posições no novo array e atualize a referência para o novo array.



Variedade. cópia de ( OrgArr , novoArr , OrgArr. Comprimento ) ;

novoArr [ OrgArr. Comprimento ] = 14 ; // novo valor

novoArr [ OrgArr. Comprimento + 1 ] = 2 ; // novo valor

OrgArr = novoArr ; // Atualiza a referência int[] NewArr = new int[OrgArr.Length + 2];

As listas oferecem flexibilidade em termos de gerenciamento de tamanho. Quando uma lista é inicializada, ela começa com uma capacidade inicial, mas pode expandir-se automaticamente à medida que mais elementos são adicionados. Esse recurso de redimensionamento dinâmico permite que as listas se adaptem às mudanças nos requisitos. As listas C# fornecem uma função Add() para adicionar os valores à lista. Veja como você pode adicionar valores a uma lista C#:





Matrizes vs listas : Comparação de uso em C #

Acessando os Valores

Os valores nos números da matriz são acessados ​​usando a notação de índice [], ou seja, usando o número de índice entre colchetes e são salvos em outra variável.

elemento de tipo = ArrayName [ índice ] ;

Para acessar os valores em uma lista C#, você também pode usar a notação de índice [] junto com a posição de índice desejada semelhante aos arrays.



elemento de tipo = Lista de nomes [ índice ] ;

Removendo os Valores

As matrizes têm um comprimento definido. Portanto, para remover os elementos, deve-se criar um novo array de menor tamanho e copiar os elementos existentes. Isso pode ser feito empregando a função Array.Copy() conforme explicado na seção “Adicionando Valores”. Nas listas C#, remover os valores é muito mais simples e intuitivo. A classe List fornece um método “remove” que permite remover um valor específico da lista.

lista de nomes. Remover ( elemento ) ;

Conte os valores

Para contar os valores em um array C#, você pode empregar o atributo length do array. A propriedade length fornece o número total de valores na matriz.

interno contar = arrayNome. Comprimento ;

Para contar os valores em uma lista C#, você pode empregar o recurso “contagem” da lista. A quantidade total de elementos que residem atualmente na lista também é retornada pelo atributo “count”.

interno contar = lista de nomes. Contar ;

Iterar os valores

Para iterar sobre valores em um array C#, você pode usar um loop “for” com o comprimento do array como condição do loop.

para ( interno eu = 0 ; eu < MatrizNome. Comprimento ; eu ++ ) {

digite e = arrayNome [ eu ] ;

Console. WriteLine ( e ) ;

}

Para iterar sobre os valores em uma lista C#, você pode usar um loop “foreach”, pois ele simplifica o processo de iteração ao iterar automaticamente sobre os elementos.

para cada ( digite e em listName ) {

Console. WriteLine ( e ) ;

}

Exemplo 1: Matrizes C#

O código fornecido declara e inicializa um array inteiro chamado “Arr” com comprimento 5 e atribui os valores aos seus elementos. Os valores atribuídos aos elementos da matriz são 11, 12, 13, 14 e 15. O código então prossegue exibindo os elementos da matriz usando um loop “for”. Cada componente é exibido em uma linha distinta usando o método Console.WriteLine().

Depois de exibir os elementos originais, o código modifica o elemento no índice 2 atribuindo-lhe um novo valor de 10. Em seguida, o código exibe a matriz modificada iterando novamente pelos elementos usando um loop “for”. Por último, o código exibe o número total de valores que residem no array usando a propriedade “Arr.Length” que produz o comprimento do array.

usando o sistema ;

manequim de classe {

estático vazio Principal ( ) {

interno [ ] Arr = novo interno [ 5 ] { onze , 12 , 13 , 14 , quinze } ;

Console. WriteLine ( 'Elementos:' ) ;

para ( interno eu = 0 ; eu < Arr. Comprimento ; eu ++ )

{

Console. WriteLine ( Arr [ eu ] ) ;

}

Arr [ 2 ] = 10 ;

Console. WriteLine ( 'Matriz modificada:' ) ;

para ( interno eu = 0 ; eu < Arr. Comprimento ; eu ++ )

{

Console. WriteLine ( Arr [ eu ] ) ;

}

Console. WriteLine ( 'Número de elementos:' + Arr. Comprimento ) ;

}

}

Exemplo 2: listas C#

O código fornecido a seguir demonstra o uso de uma lista C# para armazenar e manipular uma coleção de números inteiros. Primeiro, o código inicializa uma lista chamada “Arr” com cinco inteiros: 11, 12, 13, 14 e 15. Isso é feito usando a classe List e seu construtor junto com uma sintaxe inicializadora.

Em seguida, o programa imprime a mensagem “Elements:” e prossegue iterando cada elemento da lista usando um loop “foreach”. Durante cada iteração, o elemento atual é impresso no console usando o método Console.WriteLine().

Posteriormente, o código modifica o valor do índice 2 da lista atribuindo-lhe o valor 10 (Arr[2] = 10). Esta linha altera o terceiro elemento da lista de 13 para 10. Após a modificação, o programa imprime novamente a mensagem “Lista modificada:” e itera sobre a lista atualizada, imprimindo cada elemento no console. O código então exibe o número de valores na lista usando “Arr.Count”. Esta propriedade retorna a contagem de itens que estão presentes na lista que, no cenário a seguir, é 5.

Por último, o código remove o elemento com valor 4 da lista usando o método Arr.Remove(4). Este método procura o valor especificado na lista e remove sua primeira ocorrência. Por fim, o programa imprime a mensagem “Lista após remoção:” e percorre a lista mais uma vez, exibindo cada elemento restante após a operação de remoção.

usando o sistema ;

usando Sistema. Coleções . Genérico ;

manequim de classe {

estático vazio Principal ( ) {

Lista < interno > Arr = nova lista < interno > ( ) { onze , 12 , 13 , 14 , quinze } ;

Console. WriteLine ( 'Elementos:' ) ;

para cada ( interno n em Arr )

{

Console. WriteLine ( n ) ;

}

Arr [ 2 ] = 10 ;

Console. WriteLine ( 'Lista modificada:' ) ;

para cada ( interno n em Arr )

{

Console. WriteLine ( n ) ;

}

Console. WriteLine ( 'Número de elementos:' + Arr. Contar ) ;

Arr. Remover ( 4 ) ;

Console. WriteLine ( 'Lista após remoção:' ) ;

para cada ( interno n em Arr )

{

Console. WriteLine ( n ) ;

}

}

}

Conclusão

Este guia abordou as diferenças básicas de sintaxe entre as matrizes C# e as listas C#. Os arrays possuem comprimento fixo e são acessados ​​por índice, enquanto as listas são dimensionadas dinamicamente e fornecem métodos adicionais para adicionar e remover os elementos. Junto com isso, fornecemos os programas de lista C# que mostram a declaração, inicialização, acesso, modificação, contagem e adição de elementos.