Lógica e Algoritmos para Programação
Algoritmos com Java – Lista
Prof. Jeangrei Veiga
jeangrei@visionnit.com.br
AGENDA
➢Conceito
➢Atividades
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 2
ALGORITMO COM JAVA
LISTAS
Introdução a Programação de Computadores - Prof. Jeangrei Veiga
3
LISTAS
Conceito
•Em DEITEL (2005, pág. 673), uma coleção é uma
estrutura de dados, na realidade um objeto, que pode
armazenar ou agrupar referências a outros objetos (um
contêiner).
Adaptado: Fonte: https://www.devmedia.com.br/explorando-a-classe-arraylist-no-java/24298
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 4
LISTAS
Conceito
•As classes e interfaces da estrutura de coleções são
membros do pacote java.util e a figura abaixo
apresenta a hierarquia de algumas destas interfaces
oferecidas pelo Java.
Fonte: https://www.devmedia.com.br/explorando-a-classe-arraylist-no-java/24298
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 5
LISTAS
Conceito
Lista (List)
• Uma coleção indexada de objetos às vezes chamada de sequência.
• Como nos vetores, índices de List são baseados em zero, isto é, o índice
do primeiro elemento é zero.
Fonte: https://www.devmedia.com.br/explorando-a-classe-arraylist-no-java/24298
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 6
LISTAS
Conceito
Lista (List)
• Além dos métodos herdados de Collection, List fornece métodos para
manipular elementos baseado na sua posição (ou índice) numérica na
lista, remover determinado elemento, procurar as ocorrências de um
dado elemento e percorrer sequencialmente (ListIterator) todos os
elementos da lista.
• A interface List é implementada por várias classe, incluídas as classes
ArrayList (implementada como vetor), LinkedList e Vector.
Fonte: https://www.devmedia.com.br/explorando-a-classe-arraylist-no-java/24298
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 7
LISTAS
Atividade 1
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 8
LISTAS
Atividade 1.a
• Criar um projeto novo,
definido como
JavaApplicationLista.
• Adicionar ao projeto uma
classe Pessoa
• Adicionar os atributos e
métodos gets e sets.
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 9
LISTAS
Atividade 1.b
Implementar uma
classe para teste
chamada Teste
contendo o método
main.
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 10
LISTAS
Atividade 1.c
Implementar na classe Teste um método para adicionar itens em uma lista.
Utilizamos o método add.
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 11
LISTAS
Atividade 1.c PessoaTeste{
Implementar na classe
Teste um método para Instanciando um
adicionar itens em ArrayList do tipo
uma lista. Pessoa
Utilizamos o método
add( ).
Inserindo valores
no objeto pessoaA
Adicionando o
objeto pessoaA na
lista pessoaList
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 12
LISTAS
Atividade 1.d
• Implementar na classe Teste um método para listar os elementos que constam na lista.
• Utilizamos uma estrutura de repetição para varrer a lista...
1. Executando a
inserção
2. Exibindo o
conteúdo da lista
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 13
LISTAS
Atividade 1.d
Implementar na classe
Teste um método para Instanciando um
listar os elementos PessoaTeste {
ArrayList do tipo
que constam na lista. Pessoa
Utilizamos uma
estrutura de repetição
para varrer a lista...
Varrer todos os
elementos da lista
de pessoa
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 14
LISTAS
Atividade 1.e
• Implementar na classe Teste um método para pesquisar os elementos que constam na
lista.
• Utilizamos uma estrutura de repetição para varrer a lista e uma estrutura de decisão para
encontrar o elemento que estamos procurando
1. Executando a
inserção
2. Exibindo o
conteúdo da lista
3.Exibindo o
resultado da
pesquisa
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 15
LISTAS
Atividade 1.e
• Implementar na classe
Teste um método para PessoaTeste {
pesquisar os elementos
que constam na lista.
• Utilizamos uma estrutura
de repetição para varrer a
lista e uma estrutura de
decisão para encontrar o
elemento que estamos
procurando
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 16
LISTAS
Atividade 1.f
• Implementar na classe Teste um método para excluir um item que constam na lista.
• Podemos utilizar primeiro uma busca do item na lista(reutilizando o método pesquisar)
e ao encontrar, “anotamos” o índice desse item e utilizamos o método remove( ) para
excluir o item da lista.
1. Executando a
inserção
2. Exibindo o
conteúdo da lista
3.Exibindo o
resultado da
pesquisa
5. Exibindo o
4.Executando a
conteúdo da lista
exclusão
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 17
LISTAS
Atividade 1.f PessoaTeste {
• Implementar na classe Teste um
método para excluir um item
que constam na lista.
• Podemos utilizar primeiro uma
busca do item na
lista(reutilizando o método
pesquisar) e ao encontrar,
“anotamos” o índice desse item
e utilizamos o método remove( )
para excluir o item da lista.
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 18
LISTAS
Atividade 2
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 19
LISTAS
Atividade 2.a
• No mesmo projeto,
adicionar uma
classe Carro e uma
classe CarroTeste
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 20
LISTAS
Atividade 2.a
• Adicionar na classe
Carro, os atributos e
métodos
apresentados na
imagem.
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 21
LISTAS
Atividade 2.b
• Adicionar na classe CarroTeste no método main, um menu de opções conforme
apresentado abaixo:
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 22
LISTAS
Atividade 2.c
• Ao selecionar a opção 1, o programa deve executar a ação de inserção de elementos
em uma lista de carros.
• A cada final do processo, o programa deve perguntar se o usuário gostaria de inserir
mais um item na lista,
o caso sim, repete a operação, caso contrário, finaliza o fluxo de inserção
o e pergunta se deseja retornar ao menu principal,
▪ caso sim, retorna ao menu principal, caso contrário, finaliza a execução do
programa.
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 23
LISTAS
Atividade 2.c
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 24
LISTAS * Pré-requisito:
executar antes a
Atividade 2.d opção 1.
• Ao selecionar a *opção 2, o programa deve executar a ação de listar os elementos que
foram criados na lista de carros.
• Ao final do processo, o programa deve perguntar se o usuário gostaria de retornar ao
menu principal,
o caso sim, retorna ao menu principal, caso contrário, finaliza a execução do
programa.
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 25
LISTAS * Pré-requisito:
executar antes a
Atividade 2.e opção 1.
• Ao selecionar a *opção 3, o programa deve executar a ação de pesquisar um elemento
pelo id do carro na lista de carros.
• O id do carro deve ser informado pelo usuário antes de executar a pesquisa.
• Ao final do processo, o programa deve perguntar se o usuário gostaria de retornar ao
menu principal,
o caso sim, retorna ao menu principal, caso contrário, finaliza a execução do
programa.
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 26
* Pré-requisito:
LISTAS executar antes a
Atividade 2.f opção 1.
• Ao selecionar a *opção 4, o programa deve executar a ação de excluir um elemento
pelo id do carro na lista de carros.
• O id do carro deve ser informado pelo usuário antes de executar a exclusão.
• Ao final do processo, o programa deve perguntar se o usuário gostaria de retornar ao
menu principal,
o caso sim, retorna ao menu principal, caso contrário, finaliza a execução do
programa.
MV - VISIONNIT – INTRODUÇÃO A PROGRAMAÇÃO JAVA WEB - Prof. Jeangrei Veiga 27