1 coleções em java - parte 2 flávia falcão. 2 visão geral : interfaces principais collection...
TRANSCRIPT
![Page 1: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/1.jpg)
1
Coleções em Java - Parte 2
Flávia Falcão
![Page 2: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/2.jpg)
2
Visão Geral : Interfaces Principais
Collection Set List Map SortedSet SortedMap
![Page 3: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/3.jpg)
3
Collection Interface Collection Um grupo de Objetos Metodos principais:
Boolean add(Object); Boolean remove(Object) Int size(); Boolean isEmpty() Boolean contains(Object) Iterator iterator()
![Page 4: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/4.jpg)
4
List Interface List extends Collection Representa uma seqüência de
Objetos È possível acessa-los através de índice
Elementos duplicados são permitidos
![Page 5: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/5.jpg)
5
Implementações de List Vector ArrayList LinkedList
Uma implementação de lista duplamente ligada
Melhor performance que o ArrayList quando elementos são inseridos e apagados com freqüência
![Page 6: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/6.jpg)
6
Implementações de List Apesar da implementação Vector
ser a mais antiga é a mais usada Porem as implementações ArrayList e LinkedList são normalmente mais apropriadas para uso geral e apresentam também melhor performance na maioria dos casos
![Page 7: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/7.jpg)
7
Uso de List Criar
List lista = new ArrayList(); // aqui vc pode colocar qualquer implementação de List
Adcionar elementos Lista.add(new Conta(“002”, 2000);
Obter elemento Conta c = ( Conta) lista.get(0);
![Page 8: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/8.jpg)
Exemploimport java.util.ArrayList;import java.util.List;public class ListaExemplo {public static void main(String args[]){
List exemplo = new ArrayList();String nome1 ="ana";String nome2 ="maria";exemplo.add(nome1);exemplo.add(nome2);}}
8
![Page 9: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/9.jpg)
9
Uso de List Listar Elementos:
For(int i=0;i< lista.size();i++){System.out.println(lista.get(i));}OUIterator i = lista.iterator();while(i.hasNext()){System.out.println(i.next());}
![Page 10: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/10.jpg)
10
List Métodos importantes:
Boolean add(Object) Boolean remove(object) Object get(int) Object set(int,object) Int indexOf(Object) Int lastIndexOf(Object)
![Page 11: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/11.jpg)
11
Set Interface Set extends Collection Coleção sem ordem de Objetos Sem elementos duplicados Mesmos métodos que Collection Implementado por:
HashSet TreeSet
![Page 12: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/12.jpg)
12
Uso de Set Criar
Set conjunto = new HashSet(); Adicionar
conjunto.add("Nome"); Obter um elemento
Utilizar iterator
![Page 13: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/13.jpg)
class ConjuntoExemplo{public static void main(String args[]){Set exemplo = new HashSet();String nome1 ="ana";String nome2 ="maria";exemplo.add(nome1);exemplo.add(nome2);
}
13
![Page 14: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/14.jpg)
14
Uso de Set PercorrerIterator i = conjunto.iterator();
while(i.hasNext()){
System.out.print((String)i.next());
}
![Page 15: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/15.jpg)
15
ExemploPublic class ExemploSets{
public static void main(String args[]){ Set set = new HashSet();set.add(“bernardo”);set.add(“elizabete”);set.add(“maria”);set.add(“elizabete”);set.add(“clara”);
System.out.println(set);Set sortedSet = new TreeSet(set);System.out.println(sortedSet);
}}
![Page 16: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/16.jpg)
16
Exercicio Comparação List e Set
Criar uma classe e um método main Criar uma List e um Set e adicionar
elementos String Adicionar elementos String repetidos
a ambas as coleções Verificar o tamanho das duas
coleções – método size()
![Page 17: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/17.jpg)
17
Exercicio( cont.) Obter elementos : o segundo
elemento de cada coleção e imprimi-los.Como obter o segundo elemento do Set?
Imprimir as duas coleções Repetir os passos agora usando um
Objeto Conta ao invés de String. O que é necessário para isso?
![Page 18: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/18.jpg)
18
MapInterface Map Mapeia chaves para valores Cada chave pode ter no máximo um
valor Inserções e pesquisas muito rápidas Implementações
Hashtable HashMap
![Page 19: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/19.jpg)
19
Uso de Map Criar
Map mapa = new HashMap(); Adicionar elementos
Mapa.put(“001”, new Conta(“001”,2000));
Obter elementos Conta c = (Conta) mapa.get(“005”);
![Page 20: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/20.jpg)
20
Iterator Um iterator é um objeto que nos
ajuda a varrer (iterar) uma coleção Um cast como é necessário aqui
porque a cole pode conter qualquer Object e temos que dizer que tipo de coisa estamos esperando para satisfazer o compilador Java Tente compilar o programa sem os casts
![Page 21: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/21.jpg)
21
Como escolher entre as coleçoes? Primeiro, aplicação dita se você vai
precisar de Lista, conjunto ou Mapa Se sua aplicação precisar manter
duplicatas, use Lista Se sua aplicação não precisar manter
duplicatas e não usa chaves use conjuntos
Se a aplicação não precisar manter duplicatas e usa chaves, use Mapa
![Page 22: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/22.jpg)
22
Se precisar de uma lista: Use Vector ou ArrayList se acessar
por indice for com freqüência Use LinkedList se inserir ou remover
elementos do meio com freqüência
![Page 23: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/23.jpg)
23
Se precisar de um conjunto Use HashSet se não precisar de um
conjunto ordenado Use TreeSet se precisar de um conjunto
ordenado
![Page 24: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/24.jpg)
24
Se precisar de um Mapa Use HashMap se não precisar de um
mapa ordenado Use TreeMap se precisar de um mapa
ordenado
![Page 25: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/25.jpg)
25
Exercicio 1 Adicione a seqüência de números
2, 5, 3,9,2,4,3,8,5 a um conjunto(Set) e a uma lista(List), escolhendo a implementação que desejar. Em seguida imprima o conteúdo de ambas as coleções usando iterator e analise as diferenças.
![Page 26: 1 Coleções em Java - Parte 2 Flávia Falcão. 2 Visão Geral : Interfaces Principais Collection Set List Map SortedSet SortedMap](https://reader036.vdocuments.pub/reader036/viewer/2022081507/570638451a28abb8238f28b8/html5/thumbnails/26.jpg)
26
Exercício 2 Escreva uma aplicação de dicionário
com três funções: adicionar um termo o dicionário,procurar um termo no dicionário e listar todos os termos existentes em ordem alfabética.Qual classe você usou para implementar a coleção de palavras e por quê?