• Nenhum resultado encontrado

Estrutura de Dados

N/A
N/A
Protected

Academic year: 2021

Share "Estrutura de Dados"

Copied!
16
0
0

Texto

(1)

Estrutura de Dados

(2)

Agenda

• Java Collections

• List

– Declaração – Adição

– Remoção

– Tamanho da lista

– Recuperar Elemento – Recuperar Posição – Limpando elementos – Existência de dados

– Adicionando de outra lista – Percorrendo Elementos

• Exercícios

(3)

Java Collections

• Interface absoluta na hierarquia de coleções

– Descendem as interfaces Set, List que formam a base das coleções genéricas da linguagem Java.

Set – define uma coleção que não contém valores duplicados.

List - define uma coleção ordenada que pode conter elementos duplicados.

– As classes e interfaces dessa estrutura de coleções são membros do pacote java.util

(4)

Declarando uma coleção

Collection é uma Interface de JAVA

– Não pode ser inicializada, apenas declarada Ex.: Collection colecao = new ArrayList();

• Tanto para declarar List como Collection será necessário importar os pacotes:

– java.util.ArrayList – java.util.Collection.

(5)

Adicionando Elementos

• Para que possa ser adicionados

elementos deve ser utilizado o método add passando um argumento:

• Essa adição é realizada no fim da lista

Collection letras = new ArrayList();

letras.add("A");

letras.add("B");

letras.add(1);

letras.add(true);

(6)

Removendo Elementos

• Para que seja possível remover elementos deve-se utilizar o método remove,

enviando o elemento como parâmetro.

Collection fila = new ArrayList();

fila.add(255);

fila.add(312);

fila.add(9);

System.out.println("Valores da fila: "+fila);

fila.remove(312); //REMOVE OBJETO 312

System.out.println("Valores da fila: "+fila);

(7)

size() - Tamanho da Lista

• Responsável por recuperar a quantidade de elementos existentes em uma List

• Retorna 0, caso a lista esteja vazia.

Collection letras = new ArrayList();

letras.add(“A”) letras.add(“B”) letras.add(“C”)

System.out.println(letras.size());

(8)

get(posicao) – Recupera Elemento

• Responsável por recuperar determinado elemento de acordo com a posição.

• Retorna o elemento desejado.

Collection letras = new ArrayList();

letras.add(“A”) letras.add(“B”) letras.add(“C”)

System.out.println(letras.get(0));

(9)

indexOf(elemento) – Recupera Posição

• Responsável por recuperar a posição do elemento passado como parâmetro.

• Retorna o elemento desejado caso existe e -1 caso o elemento não exista.

Collection letras = new ArrayList();

letras.add(“A”) letras.add(“B”) letras.add(“C”)

System.out.println(letras.indexOf(“A”));

(10)

Método isEmpty

• Responsável por verificar se os dados dentro de um List estão vazios

• Retorna TRUE caso a lista esteja vazia e FALSE caso contrário.

Collection letras = new ArrayList();

if(letras.isEmpty()){

System.out.println("Lista Vazia!");

}else{

System.out.println("Contém valores -> "+letras);

}

(11)

Limpando os elementos da lista

• Para executar essa ação basta usar o método clear( )

Collection livros = new ArrayList();

livros.add("Java");

livros.add("Php");

livros.add("Python");

livros.add("SQL");

System.out.println("Listagem dos Livros: "+livros);

livros.clear();

System.out.println("Listagem após o clear: "+livros);

(12)

Verificando se existem dados

• Para verificar a existência de certos elementos dentro de uma coleção, é possível fazer isso através do método contains.

Collection vogais = new ArrayList();

vogais.add("A");

vogais.add("E");

vogais.add("I");

vogais.add("O");

vogais.add("U");

System.out.println("Contém a vogal I ? "+vogais.contains("I"));

System.out.println("Lista das vogais: "+vogais)

(13)

Adicionando elementos de outra coleção

• O método addAll permite adicionar todo os elementos de uma lista no final de

outra

Collection vogais = new ArrayList();

vogais.add("A");

vogais.add("E");

vogais.add("I");

Collection<String> vogais2 = Arrays.asList("O", "U");

//RECEBE TODOS OS ELEMENTOS DA COLEÇÃO ADICIONANDO NA COLEÇÃO VOGAIS

(14)

Exercícios - ArrayList

1. Crie um programa que receba 3

elementos da entrada e os imprima na tela,.

2. Crie um programa que receba 3 palavras, armazene em uma lista e caso exista a

palavra “IFPB” imprima na saída “Instituto

Federal da Paraíba”.

(15)

Dúvidas

(16)

Referências

• GOODRICH, M. T.; TAMASSIA, R. Estruturas de Dados e Algoritmos Em Java. 5ª Edição. Bookman, 2013.

• PUGA, S.; RISSETI, G. Lógica de Programação e

Estruturas de Dados com Aplicações em Java. 2ª Edição.

Prentice Hall, 2012.

• Algoritmos e Estruturas de Dados com Java. Disponível em:

https://www.caelum.com.br/apostila-java-estrutura-dados/.

Acesso em: 16/05/2016.

• Introdução aos tipos de Estrutura de Dados em JAVA.

Disponível em:

http://www.javaprogressivo.net/2012/09/introducao-aos-tipos- de-estrutura-de.html. Acesso em: 22/05/2016.

Referências

Documentos relacionados

l, acesse o site https://esaj.tjsp.jus.br/pastadigital/pg/abrirConferenciaDocumento.do, informe o processo 1000397-78.2018.8.26.0562 e código 371D90A.o original, assinado

Frondes fasciculadas, não adpressas ao substrato, levemente dimórficas; as estéreis com 16-27 cm de comprimento e 9,0-12 cm de largura; pecíolo com 6,0-10,0 cm de

2) Fica a critério da banca examinadora, somente para o caso de mais de um candidato realizando o concurso, atribuir ao candidato que obtiver a maior pontuação na Soma Absoluta 3

Participação do setor na arrecadação do tributo é de apenas 0,11% Participação do setor na arrecadação do tributo é de apenas 0,11% Participação do setor na arrecadação

elementos (este, por sua vez, tem seu apontador voltado para uma referência nula) Vantagem: A inserção de um elemento no meio da lista não implica mover todos os

Completa quanto aos fatores utilizados no tratamento Adoção da situação paradigm 2 Quantidade mínima de dados de mercado, efetivamente utilizados 12 5 3 3

Sintetizamos dois aspectos que explicam essa importância: o primeiro refere-se à necessidade concreta das/os profissionais apreenderem que tal direção teórica,

The aims of this study were to evaluate the pollen viability in progenies of artificially induced tetraploid accessions of Brachiaria ruziziensis, and to verify if the position of