SlideShare une entreprise Scribd logo
1  sur  18
Collections II
Conjuntos
Conjuntos

●   Conjutos: java.util.Set
●   É uma coleção que permite não tem elementos duplicados
    e não necessariamente mantém uma ordenação específica
    entre os elementos.
●   Diversas implementações disponíveis, com formas
    diferentes de representar um conjunto
Unicidade

●   Utilidade da unicidade
●   Identificação (impressão digital, iris)
●   Cores
●   Paises
●   Vocabulario
●   Simbologia
HashSet

●   java.util.HashSet implements java.util.Set
●   Elementos únicos
●   Rápida em executar buscas
●   Não mantém a ordem dos elementos
HashSet

●   Criar um conjunto
    HashSet conj = new HashSet()
●   Também pode ser feito pela interface Set
    Set conj = new HashSet()
●   Adicionar elementos
    conj.add(“Primeiro”)
    conj.add(2)
HashSet

●   Total elementos de um conjunto
    System.out.println(conj.size())
●   Iterar sobre um conjunto
    for (Object o : conj) {
        System.out.println(conj)
    }
●   Outros métodos como contains, remove, addAll
●   Diferentemente de List, não tem o método get
Outros métodos de Set

●   Métodos de conjuntos
●   A contém B? (a.containsAll(b))
●   A união B? (a.addAll(b))
●   A interseção B? (a.retainAll(b))
●   Existe em A e não em B? (a.removeAll(b))
Outras implementações de Set

●   java.util.LinkedHashSet implements java.util.Set
●   Diferente de HashSet, essa implementação mantém a
    ordem de inserção dos elementos


●   java.util.TreeSet implements java.util.Set
●   Diferente de HashSet, essa implementação já ordena seus
    elementos no momento da inserção, se a classe inserida
    implementar a interface Comparable
Mapas

●   Mapas: java.util.Map
●   É um conjunto de associações entre um objeto chave e um
    objeto valor, onde as chaves, assim como os conjuntos são
    formadas por valores únicos.
HashMap

●   java.util.HashMap implements java.util.Map
●   Chaves únicas
●   Não mantém a ordem das chaves
HashMap

●   Criar um mapa
    HashMap mapa = new HashMap()
●   Também pode ser feito pela interface Set
    Map mapa = new HashMap()
●   Adicionar elementos
    mapa.put(“nome”, “Thiago”)
    mapa.put(“empresa”, “Astux”)
HashMap

●   Total elementos de um mapa
    System.out.println(mapa.size())
●   Iterar sobre um conjunto
    for (Object o : mapa.keySet()) {
        System.out.println(mapa.get(o))
    }
●   keySet() retorna um Set com as chaves do mapa
●   values() retorna um List contendo todos os valores do mapa
Outras implementações de Map

●   java.util.LinkedHashMap implements java.util.Map
●   Diferente de HashMap, essa implementação mantém a
    ordem de inserção das chaves
●   java.util.TreeMap implements java.util.Map
●   Diferente de HashSet, essa implementação já ordena suas
    chaves no momento da inserção, se a classe inserida
    implementar a interface Comparable
Visão Geral de Collections
hashCode

●   Muitas coleções usam tabelas hash em suas
    implementações.
●   Para buscas mais eficientes
●   Funciona como uma agenda telefonica onde o indice é o
    hashCode
Generics

●   Geralmente uma lista com objetos diferentes não é
    interessante.
●   Generics são usados para forçar o uso de uma determinada
    classe (ou alguma subclasse dela) em uma coleção
●   Principal vantagem é evitar o uso constante de castings
Duvidas?

Contenu connexe

Similaire à 9 collections-ii

Similaire à 9 collections-ii (12)

Curso java 08 - mais sobre coleções
Curso java   08 - mais sobre coleçõesCurso java   08 - mais sobre coleções
Curso java 08 - mais sobre coleções
 
Java 12 Colecoes
Java 12 ColecoesJava 12 Colecoes
Java 12 Colecoes
 
Aula05
Aula05Aula05
Aula05
 
Curso Java Básico - Aula 05
Curso Java Básico - Aula 05Curso Java Básico - Aula 05
Curso Java Básico - Aula 05
 
Collection Java (2/2)
Collection Java (2/2)Collection Java (2/2)
Collection Java (2/2)
 
Collections Java (1/2)
Collections Java (1/2)Collections Java (1/2)
Collections Java (1/2)
 
Java: Collections
Java: CollectionsJava: Collections
Java: Collections
 
Slides collections
Slides collectionsSlides collections
Slides collections
 
Grupo2
Grupo2Grupo2
Grupo2
 
Java 14
Java 14Java 14
Java 14
 
Coleções Propriedade, Resources e Strings
Coleções Propriedade, Resources e StringsColeções Propriedade, Resources e Strings
Coleções Propriedade, Resources e Strings
 
HashSet, TreeSet, LinkedHashSet em Java
HashSet, TreeSet, LinkedHashSet em JavaHashSet, TreeSet, LinkedHashSet em Java
HashSet, TreeSet, LinkedHashSet em Java
 

Plus de Thiago Oliveira (7)

7 interfaces
7 interfaces7 interfaces
7 interfaces
 
6 excecoes
6 excecoes6 excecoes
6 excecoes
 
5 oo-avançado
5 oo-avançado5 oo-avançado
5 oo-avançado
 
4 arrays
4 arrays4 arrays
4 arrays
 
3 orientacao-objetos
3 orientacao-objetos3 orientacao-objetos
3 orientacao-objetos
 
2 controle-de-fluxo
2 controle-de-fluxo2 controle-de-fluxo
2 controle-de-fluxo
 
1 introdução
1 introdução1 introdução
1 introdução
 

Dernier

PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfHELENO FAVACHO
 
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2Maria Teresa Thomaz
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxLuizHenriquedeAlmeid6
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptssuser2b53fe
 
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdfPROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdfHELENO FAVACHO
 
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...Francisco Márcio Bezerra Oliveira
 
Seminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptxSeminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptxReinaldoMuller1
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfHELENO FAVACHO
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasSocorro Machado
 
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffffSSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffffNarlaAquino
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médiorosenilrucks
 
About Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de HotéisAbout Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de Hotéisines09cachapa
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxTailsonSantos1
 
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxSlide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxedelon1
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfcomercial400681
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteVanessaCavalcante37
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdfmarlene54545
 
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxResponde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxAntonioVieira539017
 

Dernier (20)

PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
 
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2Estudar, para quê?  Ciência, para quê? Parte 1 e Parte 2
Estudar, para quê? Ciência, para quê? Parte 1 e Parte 2
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
 
aula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.pptaula de bioquímica bioquímica dos carboidratos.ppt
aula de bioquímica bioquímica dos carboidratos.ppt
 
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdfPROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
 
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
LISTA DE EXERCICIOS envolveto grandezas e medidas e notação cientifica 1 ANO ...
 
Seminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptxSeminário Biologia e desenvolvimento da matrinxa.pptx
Seminário Biologia e desenvolvimento da matrinxa.pptx
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
 
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffffSSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
SSE_BQ_Matematica_4A_SR.pdfffffffffffffffffffffffffffffffffff
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
 
About Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de HotéisAbout Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de Hotéis
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
 
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxSlide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
 
19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf19- Pedagogia (60 mapas mentais) - Amostra.pdf
19- Pedagogia (60 mapas mentais) - Amostra.pdf
 
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptxResponde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
Responde ou passa na HISTÓRIA - REVOLUÇÃO INDUSTRIAL - 8º ANO.pptx
 

9 collections-ii

  • 3. Conjuntos ● Conjutos: java.util.Set ● É uma coleção que permite não tem elementos duplicados e não necessariamente mantém uma ordenação específica entre os elementos. ● Diversas implementações disponíveis, com formas diferentes de representar um conjunto
  • 4. Unicidade ● Utilidade da unicidade ● Identificação (impressão digital, iris) ● Cores ● Paises ● Vocabulario ● Simbologia
  • 5. HashSet ● java.util.HashSet implements java.util.Set ● Elementos únicos ● Rápida em executar buscas ● Não mantém a ordem dos elementos
  • 6. HashSet ● Criar um conjunto HashSet conj = new HashSet() ● Também pode ser feito pela interface Set Set conj = new HashSet() ● Adicionar elementos conj.add(“Primeiro”) conj.add(2)
  • 7. HashSet ● Total elementos de um conjunto System.out.println(conj.size()) ● Iterar sobre um conjunto for (Object o : conj) { System.out.println(conj) } ● Outros métodos como contains, remove, addAll ● Diferentemente de List, não tem o método get
  • 8. Outros métodos de Set ● Métodos de conjuntos ● A contém B? (a.containsAll(b)) ● A união B? (a.addAll(b)) ● A interseção B? (a.retainAll(b)) ● Existe em A e não em B? (a.removeAll(b))
  • 9. Outras implementações de Set ● java.util.LinkedHashSet implements java.util.Set ● Diferente de HashSet, essa implementação mantém a ordem de inserção dos elementos ● java.util.TreeSet implements java.util.Set ● Diferente de HashSet, essa implementação já ordena seus elementos no momento da inserção, se a classe inserida implementar a interface Comparable
  • 10. Mapas ● Mapas: java.util.Map ● É um conjunto de associações entre um objeto chave e um objeto valor, onde as chaves, assim como os conjuntos são formadas por valores únicos.
  • 11. HashMap ● java.util.HashMap implements java.util.Map ● Chaves únicas ● Não mantém a ordem das chaves
  • 12. HashMap ● Criar um mapa HashMap mapa = new HashMap() ● Também pode ser feito pela interface Set Map mapa = new HashMap() ● Adicionar elementos mapa.put(“nome”, “Thiago”) mapa.put(“empresa”, “Astux”)
  • 13. HashMap ● Total elementos de um mapa System.out.println(mapa.size()) ● Iterar sobre um conjunto for (Object o : mapa.keySet()) { System.out.println(mapa.get(o)) } ● keySet() retorna um Set com as chaves do mapa ● values() retorna um List contendo todos os valores do mapa
  • 14. Outras implementações de Map ● java.util.LinkedHashMap implements java.util.Map ● Diferente de HashMap, essa implementação mantém a ordem de inserção das chaves ● java.util.TreeMap implements java.util.Map ● Diferente de HashSet, essa implementação já ordena suas chaves no momento da inserção, se a classe inserida implementar a interface Comparable
  • 15. Visão Geral de Collections
  • 16. hashCode ● Muitas coleções usam tabelas hash em suas implementações. ● Para buscas mais eficientes ● Funciona como uma agenda telefonica onde o indice é o hashCode
  • 17. Generics ● Geralmente uma lista com objetos diferentes não é interessante. ● Generics são usados para forçar o uso de uma determinada classe (ou alguma subclasse dela) em uma coleção ● Principal vantagem é evitar o uso constante de castings