Uma Estrutura Linear de Dados: Array

Tempo de leitura: 3 min

Escrito por Michel Adriano Medeiros
em 26/06/2020

Múltiplos Valores em uma Variável

Para guardar múltiplos valores em uma variável, nós precisamos de um dado estruturado ao invés de uma simples variável.

Uma estrutura de dados é uma estrutura de locação múltipla de memória. Uma simples estrutura de dados como o Array é um dado linear de estrutura.

Pegando os três jogadores como exemplo, eles são representados por três instâncias da mesma classe Player.java porque eles têm o mesmo comportamento e atributos.

Para guardar três objetos de jogador, dois caminhos podem ser tomados. Um é declarar três variáveis com o mesmo tipo, que no caso é Player.

A maneira de guardar os dados dos três jogadores em três objetos é espalhar na memória do computador em três locais.

Com os objetos espalhados dessa maneira, qual seria a ordem do jogador para jogar o jogo? Já que eles não têm nenhuma relação um com o outro.

Deixando assim, temos que produzir muito código para fazer por exemplo uma simples pesquisa sobre os jogadores e pior ainda se precisarmos adicionar mais jogadores.

Sendo assim, precisamos de uma outra maneira para fazer a tarefa de guardar dados dos jogadores e acessar os dados dos jogadores individualmente.

Isso pode ser feito com o Array. Isto é, um array não é uma simples locação de memória, mas um grupo consecutivo de locação de memória. Porque eles são alocados consecutivamente, o primeiro jogador é alocado na primeira posição que é a zero, o segundo na segunda posição que é a um e assim por diante.

As posições 0,1,… são chamadas de indexadores ou index. Devido ao fato de que o array é uma sequência consecutiva de alocação de memória, ele é chamado de estrutura de dados unidimensional linear. Veja a imagem:

Criando um Array

A mesma ideia pode ser aplicada para outros tipos de dados, assim como os primitivos. Agora precisamos gravar três objetos de jogadores, para isso vamos criar um array.

O par de colchetes representa a estrutura de dados do Array. O Player[] significa que o array tem os tipos de dados Player.java. A declaração é lida como “a variável playerAry é um array de Player” ou “um array de Player chamado playerAry”.

Nesse momento, a variável playerAry não está alocada na memória, contudo, nós usamos o termo de “declaração”. Para alocar o array fisicamente na memória, temos que fazer o seguinte:

O “new Player[3]” indica que nós precisamos de três alocação de memórias consecutivas para cada jogador da classe Player. O valor de 3 é também chamado  de tamanho do array.

Como mencionado, cada unidade do array tem seu próprio index. O index sempre começa do zero, então para acessar os dados de cada jogador é assim: playerAry[0], playerAry[1] e playerAry[2].

Se você tentar acessar uma posição que não existe no array, como por exemplo, playerAry[3], irá causar um erro. Com o array podemos manipular os dados por meio dos index, para fazer isso sem um array ficaria bem mais complicado.

Para adicionar um jogador no array devemos fazer o seguinte:

Mas, em vez de fazer assim, podemos utilizar o for.

Esse exemplo ilustra que o “for” é adequando para manipular um array porque o tamanho de um array é fixo. Sempre que possível, vamos utilizar o “for” para manipular um array.

Caractere não é uma String

Tenha cuidado, uma String consiste em uma sequência de caracteres, mas não é um array e um caractere não é uma String. Contudo, tem uma similaridade, eles podem ser convertidos um pelo outro e tem métodos similares para isso.

Sabemos que um array contém dados do mesmo tipo, tem um tamanho fixo e organiza um grupo de dados facilmente utilizando os indexes. Infelizmente, a vantagem de ter um tamanho fixo às vezes pode ser uma desvantagem.

E se não soubermos o tamanho que o array irá precisar?

Curso Java Para Iniciantes

Fonte: Learning Java with Games

Você vai gostar também:

Para enviar seu comentário, preencha os campos abaixo:

Deixe um comentário


*


*


Seja o primeiro a comentar!

Damos valor à sua privacidade

Nós e os nossos parceiros armazenamos ou acedemos a informações dos dispositivos, tais como cookies, e processamos dados pessoais, tais como identificadores exclusivos e informações padrão enviadas pelos dispositivos, para as finalidades descritas abaixo. Poderá clicar para consentir o processamento por nossa parte e pela parte dos nossos parceiros para tais finalidades. Em alternativa, poderá clicar para recusar o consentimento, ou aceder a informações mais pormenorizadas e alterar as suas preferências antes de dar consentimento. As suas preferências serão aplicadas apenas a este website.

Cookies estritamente necessários

Estes cookies são necessários para que o website funcione e não podem ser desligados nos nossos sistemas. Normalmente, eles só são configurados em resposta a ações levadas a cabo por si e que correspondem a uma solicitação de serviços, tais como definir as suas preferências de privacidade, iniciar sessão ou preencher formulários. Pode configurar o seu navegador para bloquear ou alertá-lo(a) sobre esses cookies, mas algumas partes do website não funcionarão. Estes cookies não armazenam qualquer informação pessoal identificável.

Cookies de desempenho

Estes cookies permitem-nos contar visitas e fontes de tráfego, para que possamos medir e melhorar o desempenho do nosso website. Eles ajudam-nos a saber quais são as páginas mais e menos populares e a ver como os visitantes se movimentam pelo website. Todas as informações recolhidas por estes cookies são agregadas e, por conseguinte, anónimas. Se não permitir estes cookies, não saberemos quando visitou o nosso site.

Cookies de funcionalidade

Estes cookies permitem que o site forneça uma funcionalidade e personalização melhoradas. Podem ser estabelecidos por nós ou por fornecedores externos cujos serviços adicionámos às nossas páginas. Se não permitir estes cookies algumas destas funcionalidades, ou mesmo todas, podem não atuar corretamente.

Cookies de publicidade

Estes cookies podem ser estabelecidos através do nosso site pelos nossos parceiros de publicidade. Podem ser usados por essas empresas para construir um perfil sobre os seus interesses e mostrar-lhe anúncios relevantes em outros websites. Eles não armazenam diretamente informações pessoais, mas são baseados na identificação exclusiva do seu navegador e dispositivo de internet. Se não permitir estes cookies, terá menos publicidade direcionada.

Visite as nossas páginas de Políticas de privacidade e Termos e condições.

Importante: Este site faz uso de cookies que podem conter informações de rastreamento sobre os visitantes.
Criado por WP RGPD Pro