SlideShare una empresa de Scribd logo
1 de 15
Collections I
Arrays

●   Problematicos?
●   Tamanho pré-definido
●   Não redimensionaveis
●   Procurar um elemento sem saber o seu indice
●   Quantas posições já foram populadas
Collections

●   Pacote java.util
●   Classes e interfaces
●   Estruturas de dados avançadas
●   Resolver problemas comuns de maneira simples
●   Não reinventar a roda
Visão Geral

●   Listas: java.util.List
          ●   java.util.ArrayList
          ●   java.util.LinkedList
          ●   java.util.Vector
●   Conjuntos: java.util.Set
          ●   java.util.HashSet
          ●   java.util.LinkedHashSet
          ●   java.util.TreeSet
Visão Geral

●   Listas: java.util.Map
         ●   java.util.HashMap
         ●   java.util.TreeMap
         ●   java.util.Hashtable
Listas

●   Listas: java.util.List
●   É uma coleção que permite elementos duplicados e
    mantém uma ordenação específica entre os elementos.
●   Resolve problemas em relação ao array (busca, remoção,
    tamanho “infinito”, …)
●   Diversas implementações disponíveis, com formas
    diferentes de representar uma lista
ArrayList

●   java.util.ArrayList implements java.util.List
●   Implementação mais utilizada
●   Trabalha com um array interno para gerar uma lista
●   Rápida em executar buscas
●   ArrayList não é um array
ArrayList

●   Criar uma lista
    ArrayList lista = new ArrayList()
●   Também pode ser feito pela interface List
    List lista = new ArrayList()
●   Adicionar elementos
    lista.add(“Primeiro”)
    lista.add(2)
ArrayList

●   Total elementos de uma lista
    System.out.println(lista.size())
●   Iterar sobre uma lista
    for (int i = 0; i < lista.size(); i++) {
        System.out.println(lista.get(i))
    }
●   Outros metodos como: remove, contains, set, subList
Outras implementações de List

●   java.util.LinkedList implements java.util.List
●   Outra implementação de java.util.List, bem parecida com
    ArrayList, porém mais performatica na inserção e remoção
    de itens nas pontas da lista


●   java.util.Vector implements java.util.List
●   Implementação presente desde a versão 1.0, funcionalidade
    bastante parecida com o ArrayList
●   Pensada para ser executada em ambientes concorrentes
●   Perda de performance em ambientes não concorrentes
Outras implementações de List

●   Visão da Interface java.util.List e suas principais
    implementações
Ordenação

●   java.util.Collections.sort()
    List lista = new ArrayList();
    lista.add(“Thiago”);
    lista.add(“Guilherme”);
    lista.add(“Pedro”);
    System.out.println(lista)
    Collections.sort(lista)
    System.out.println(lista)
Comparando

●   Objetos precisam ser comparaveis
●   Para o funcionamento do sort, existe um criterio de
    comparação que deve ser especificado
●   Entra em ação a interface java.lang.Comparable
●   Para poderem ser ordenados, os objetos devem
    implementar a interface Comparable e sobrescrever o
    metodo compareTo()
Outros métodos de Collections

●   binarySearch(List, Object)
●   max(Collection)
●   min(Collection)
●   reverse(List)
●   Entre outros


●   Relembrando a classe utilitaria de array, a java.util.Arrays
Duvidas?

Más contenido relacionado

La actualidad más candente

Collections Java (1/2)
Collections Java (1/2)Collections Java (1/2)
Collections Java (1/2)rdgse
 
Java: Composicao e Array List
Java: Composicao e Array ListJava: Composicao e Array List
Java: Composicao e Array ListArthur Emanuel
 
Aula 02 - JavaScript: Arrays
Aula 02 - JavaScript: ArraysAula 02 - JavaScript: Arrays
Aula 02 - JavaScript: ArraysJessyka Lage
 
(A11b) LabMM3 - JavaScript - Arrays
(A11b) LabMM3 - JavaScript - Arrays(A11b) LabMM3 - JavaScript - Arrays
(A11b) LabMM3 - JavaScript - ArraysCarlos Santos
 
Curso jpa java persistence API
Curso jpa java persistence APICurso jpa java persistence API
Curso jpa java persistence APIMiguel Vilaca
 

La actualidad más candente (12)

Collections Java (1/2)
Collections Java (1/2)Collections Java (1/2)
Collections Java (1/2)
 
Slide Share s2 Rodd
Slide Share s2 RoddSlide Share s2 Rodd
Slide Share s2 Rodd
 
Slide Semana2 Rodrigo2
Slide Semana2 Rodrigo2Slide Semana2 Rodrigo2
Slide Semana2 Rodrigo2
 
Slide Semana2 Rodrigo
Slide Semana2 RodrigoSlide Semana2 Rodrigo
Slide Semana2 Rodrigo
 
Java: Composicao e Array List
Java: Composicao e Array ListJava: Composicao e Array List
Java: Composicao e Array List
 
Aula 2 2
Aula 2 2 Aula 2 2
Aula 2 2
 
Lpiii dp-apostila
Lpiii dp-apostilaLpiii dp-apostila
Lpiii dp-apostila
 
Aula 02 - JavaScript: Arrays
Aula 02 - JavaScript: ArraysAula 02 - JavaScript: Arrays
Aula 02 - JavaScript: Arrays
 
Csharp fundamentals
Csharp fundamentalsCsharp fundamentals
Csharp fundamentals
 
(A11b) LabMM3 - JavaScript - Arrays
(A11b) LabMM3 - JavaScript - Arrays(A11b) LabMM3 - JavaScript - Arrays
(A11b) LabMM3 - JavaScript - Arrays
 
Curso jpa java persistence API
Curso jpa java persistence APICurso jpa java persistence API
Curso jpa java persistence API
 
Apostila php 01
Apostila php 01Apostila php 01
Apostila php 01
 

Destacado

Destacado (8)

13 banco-de-dados
13 banco-de-dados13 banco-de-dados
13 banco-de-dados
 
THREADS JAVA
THREADS JAVATHREADS JAVA
THREADS JAVA
 
12 threads
12 threads12 threads
12 threads
 
10 io
10 io10 io
10 io
 
11 sockets
11 sockets11 sockets
11 sockets
 
Aulas de Java Avançado 2- Faculdade iDez 2010
Aulas de Java Avançado 2- Faculdade iDez 2010Aulas de Java Avançado 2- Faculdade iDez 2010
Aulas de Java Avançado 2- Faculdade iDez 2010
 
Apresentacao Aula04 So
Apresentacao Aula04 SoApresentacao Aula04 So
Apresentacao Aula04 So
 
Sistemas Distribuídos - Aula 11 - Sistemas Operacionais Distribuídos
Sistemas Distribuídos - Aula 11 - Sistemas Operacionais DistribuídosSistemas Distribuídos - Aula 11 - Sistemas Operacionais Distribuídos
Sistemas Distribuídos - Aula 11 - Sistemas Operacionais Distribuídos
 

Similar a Coleções Java: Listas, Conjuntos e Mapas

Similar a Coleções Java: Listas, Conjuntos e Mapas (20)

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
 
Classes Java , JDBC / Swing / Collections
Classes Java , JDBC / Swing / Collections Classes Java , JDBC / Swing / Collections
Classes Java , JDBC / Swing / Collections
 
Slides collections
Slides collectionsSlides collections
Slides collections
 
Seminário - Java Collections
Seminário - Java CollectionsSeminário - Java Collections
Seminário - Java Collections
 
Estrutura de dados
Estrutura de dadosEstrutura de dados
Estrutura de dados
 
Java Collections - Tomaz Lavieri
Java Collections - Tomaz LavieriJava Collections - Tomaz Lavieri
Java Collections - Tomaz Lavieri
 
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
 
Grupo2
Grupo2Grupo2
Grupo2
 
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricasCurso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
 
Java8
Java8Java8
Java8
 
Resumão java
Resumão javaResumão java
Resumão java
 
Lista encadeada de inteiros
Lista encadeada de inteirosLista encadeada de inteiros
Lista encadeada de inteiros
 
4234 mysql
4234 mysql4234 mysql
4234 mysql
 
Curso Java Básico - Aula02
Curso Java Básico - Aula02Curso Java Básico - Aula02
Curso Java Básico - Aula02
 
Classes Anônimas, Internas e Coleções Java
Classes Anônimas, Internas e Coleções JavaClasses Anônimas, Internas e Coleções Java
Classes Anônimas, Internas e Coleções Java
 
Programação orientada a objetos - IV
Programação orientada a objetos - IVProgramação orientada a objetos - IV
Programação orientada a objetos - IV
 
Curso java 04 - ap is e bibliotecas
Curso java   04 - ap is e bibliotecasCurso java   04 - ap is e bibliotecas
Curso java 04 - ap is e bibliotecas
 
Collection Java (2/2)
Collection Java (2/2)Collection Java (2/2)
Collection Java (2/2)
 

Más 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
 

Último

637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 anoAdelmaTorres2
 
19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileiros19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileirosMary Alvarenga
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresaulasgege
 
Slides criatividade 01042024 finalpdf Portugues.pdf
Slides criatividade 01042024 finalpdf Portugues.pdfSlides criatividade 01042024 finalpdf Portugues.pdf
Slides criatividade 01042024 finalpdf Portugues.pdfpaulafernandes540558
 
Prática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISPrática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISVitor Vieira Vasconcelos
 
Free-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptxFree-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptxkarinasantiago54
 
Bingo da potenciação e radiciação de números inteiros
Bingo da potenciação e radiciação de números inteirosBingo da potenciação e radiciação de números inteiros
Bingo da potenciação e radiciação de números inteirosAntnyoAllysson
 
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024Sandra Pratas
 
Dança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parteDança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira partecoletivoddois
 
6°ano Uso de pontuação e acentuação.pptx
6°ano Uso de pontuação e acentuação.pptx6°ano Uso de pontuação e acentuação.pptx
6°ano Uso de pontuação e acentuação.pptxErivaldoLima15
 
Linguagem verbal , não verbal e mista.pdf
Linguagem verbal , não verbal e mista.pdfLinguagem verbal , não verbal e mista.pdf
Linguagem verbal , não verbal e mista.pdfLaseVasconcelos1
 
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptxSlides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptxLuizHenriquedeAlmeid6
 
O guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfO guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfErasmo Portavoz
 
ADJETIVO para 8 ano. Ensino funda.mental
ADJETIVO para 8 ano. Ensino funda.mentalADJETIVO para 8 ano. Ensino funda.mental
ADJETIVO para 8 ano. Ensino funda.mentalSilvana Silva
 
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do  3ANO fundamental 1 MG.pdfPLANEJAMENTO anual do  3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdfProfGleide
 
Guia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfGuia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfEyshilaKelly1
 
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.pptTREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.pptAlineSilvaPotuk
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfaulasgege
 
Geometria 5to Educacion Primaria EDU Ccesa007.pdf
Geometria  5to Educacion Primaria EDU  Ccesa007.pdfGeometria  5to Educacion Primaria EDU  Ccesa007.pdf
Geometria 5to Educacion Primaria EDU Ccesa007.pdfDemetrio Ccesa Rayme
 

Último (20)

637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
 
19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileiros19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileiros
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autores
 
Slides criatividade 01042024 finalpdf Portugues.pdf
Slides criatividade 01042024 finalpdf Portugues.pdfSlides criatividade 01042024 finalpdf Portugues.pdf
Slides criatividade 01042024 finalpdf Portugues.pdf
 
Prática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGISPrática de interpretação de imagens de satélite no QGIS
Prática de interpretação de imagens de satélite no QGIS
 
treinamento brigada incendio 2024 no.ppt
treinamento brigada incendio 2024 no.ppttreinamento brigada incendio 2024 no.ppt
treinamento brigada incendio 2024 no.ppt
 
Free-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptxFree-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptx
 
Bingo da potenciação e radiciação de números inteiros
Bingo da potenciação e radiciação de números inteirosBingo da potenciação e radiciação de números inteiros
Bingo da potenciação e radiciação de números inteiros
 
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
HORA DO CONTO5_BECRE D. CARLOS I_2023_2024
 
Dança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parteDança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parte
 
6°ano Uso de pontuação e acentuação.pptx
6°ano Uso de pontuação e acentuação.pptx6°ano Uso de pontuação e acentuação.pptx
6°ano Uso de pontuação e acentuação.pptx
 
Linguagem verbal , não verbal e mista.pdf
Linguagem verbal , não verbal e mista.pdfLinguagem verbal , não verbal e mista.pdf
Linguagem verbal , não verbal e mista.pdf
 
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptxSlides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
Slides Lição 2, Central Gospel, A Volta Do Senhor Jesus , 1Tr24.pptx
 
O guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfO guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdf
 
ADJETIVO para 8 ano. Ensino funda.mental
ADJETIVO para 8 ano. Ensino funda.mentalADJETIVO para 8 ano. Ensino funda.mental
ADJETIVO para 8 ano. Ensino funda.mental
 
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do  3ANO fundamental 1 MG.pdfPLANEJAMENTO anual do  3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
 
Guia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfGuia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdf
 
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.pptTREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdf
 
Geometria 5to Educacion Primaria EDU Ccesa007.pdf
Geometria  5to Educacion Primaria EDU  Ccesa007.pdfGeometria  5to Educacion Primaria EDU  Ccesa007.pdf
Geometria 5to Educacion Primaria EDU Ccesa007.pdf
 

Coleções Java: Listas, Conjuntos e Mapas

  • 2. Arrays ● Problematicos? ● Tamanho pré-definido ● Não redimensionaveis ● Procurar um elemento sem saber o seu indice ● Quantas posições já foram populadas
  • 3. Collections ● Pacote java.util ● Classes e interfaces ● Estruturas de dados avançadas ● Resolver problemas comuns de maneira simples ● Não reinventar a roda
  • 4. Visão Geral ● Listas: java.util.List ● java.util.ArrayList ● java.util.LinkedList ● java.util.Vector ● Conjuntos: java.util.Set ● java.util.HashSet ● java.util.LinkedHashSet ● java.util.TreeSet
  • 5. Visão Geral ● Listas: java.util.Map ● java.util.HashMap ● java.util.TreeMap ● java.util.Hashtable
  • 6. Listas ● Listas: java.util.List ● É uma coleção que permite elementos duplicados e mantém uma ordenação específica entre os elementos. ● Resolve problemas em relação ao array (busca, remoção, tamanho “infinito”, …) ● Diversas implementações disponíveis, com formas diferentes de representar uma lista
  • 7. ArrayList ● java.util.ArrayList implements java.util.List ● Implementação mais utilizada ● Trabalha com um array interno para gerar uma lista ● Rápida em executar buscas ● ArrayList não é um array
  • 8. ArrayList ● Criar uma lista ArrayList lista = new ArrayList() ● Também pode ser feito pela interface List List lista = new ArrayList() ● Adicionar elementos lista.add(“Primeiro”) lista.add(2)
  • 9. ArrayList ● Total elementos de uma lista System.out.println(lista.size()) ● Iterar sobre uma lista for (int i = 0; i < lista.size(); i++) { System.out.println(lista.get(i)) } ● Outros metodos como: remove, contains, set, subList
  • 10. Outras implementações de List ● java.util.LinkedList implements java.util.List ● Outra implementação de java.util.List, bem parecida com ArrayList, porém mais performatica na inserção e remoção de itens nas pontas da lista ● java.util.Vector implements java.util.List ● Implementação presente desde a versão 1.0, funcionalidade bastante parecida com o ArrayList ● Pensada para ser executada em ambientes concorrentes ● Perda de performance em ambientes não concorrentes
  • 11. Outras implementações de List ● Visão da Interface java.util.List e suas principais implementações
  • 12. Ordenação ● java.util.Collections.sort() List lista = new ArrayList(); lista.add(“Thiago”); lista.add(“Guilherme”); lista.add(“Pedro”); System.out.println(lista) Collections.sort(lista) System.out.println(lista)
  • 13. Comparando ● Objetos precisam ser comparaveis ● Para o funcionamento do sort, existe um criterio de comparação que deve ser especificado ● Entra em ação a interface java.lang.Comparable ● Para poderem ser ordenados, os objetos devem implementar a interface Comparable e sobrescrever o metodo compareTo()
  • 14. Outros métodos de Collections ● binarySearch(List, Object) ● max(Collection) ● min(Collection) ● reverse(List) ● Entre outros ● Relembrando a classe utilitaria de array, a java.util.Arrays