Logica de programação
1 de 47
http://www.caelum.com.br/apostila-java-estrutura-dados/vetores/
CAPÍTULO 4
"A melhor maneira de fugir do seu problema é resolvê-lo"
— Robert Anthony
Vamos implementar uma Lista para resolver o problema da listagem de alunos. Lembrando que a interface da Lista já foi definida no capítulo de armazenamento sequencial, seguem as operações que devemos implementar:
1. Adiciona um dado aluno no fim da Lista.
2. Adiciona um dado aluno em uma dada posição.
3. Pega o aluno de dada posição.
4. Remove o aluno de dada posição.
5. Verifica se um dado aluno está armazenado.
6. Informa o número de alunos armazenados.
Ainda falta definir como os alunos serão armazenados. Como queremos manter muitos alunos vamos alocar um grande espaço de memória sequencial com capacidade para guardar uma certa quantidade de alunos, talvez 100 alunos por enquanto seja
06/06/2013 17:16
Vetores - Algoritmos e Estruturas de Dados com Java
2 de 47
http://www.caelum.com.br/apostila-java-estrutura-dados/vetores/
Para facilitar o acesso aos alunos, dividiremos o espaço de memória alocado em pequenos pedaços idênticos. Cada pedaço armazenará um aluno. Além disso, vamos indexar (numerar) os pequenos pedaços para ser fácil recuperar um aluno.
Praticamente todas as linguagens de programação têm um recurso similar ao que descrevemos acima. Em Java, este recurso é chamado de Array.
Um array é uma porção de memória fixa e sequencial dividida em pedaços idênticos indexados a partir do 0. Em cada posição do array, podemos guardar um aluno. Na verdade, cada posição pode guardar uma referência para um objeto do tipo Aluno.
A capacidade de um array é fixa e deve ser informada no momento da criação do array. Não é possível redimensionar um array em Java, teremos de contornar isso mais adiante.
06/06/2013 17:16
Vetores - Algoritmos e Estruturas de Dados com Java
3 de 47