SlideShare uma empresa Scribd logo
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?

Mais conteúdo relacionado

PDF
Java Coleções
ODP
Java 12 Colecoes
ODP
9 collections-ii
PDF
Curso java 08 - mais sobre coleções
PPTX
Java: Collections
PDF
POO - 23 - Coleções da API do Java
PPTX
Java: strings e arrays
PDF
Java collections-basic
Java Coleções
Java 12 Colecoes
9 collections-ii
Curso java 08 - mais sobre coleções
Java: Collections
POO - 23 - Coleções da API do Java
Java: strings e arrays
Java collections-basic

Mais procurados (12)

PDF
Collections Java (1/2)
ODP
Slide Share s2 Rodd
ODP
Slide Semana2 Rodrigo2
ODP
Slide Semana2 Rodrigo
PPTX
Java: Composicao e Array List
PDF
Aula 2 2
PDF
Lpiii dp-apostila
PPTX
Aula 02 - JavaScript: Arrays
PPTX
Csharp fundamentals
PDF
(A11b) LabMM3 - JavaScript - Arrays
PPTX
Curso jpa java persistence API
PDF
Apostila php 01
Collections Java (1/2)
Slide Share s2 Rodd
Slide Semana2 Rodrigo2
Slide Semana2 Rodrigo
Java: Composicao e Array List
Aula 2 2
Lpiii dp-apostila
Aula 02 - JavaScript: Arrays
Csharp fundamentals
(A11b) LabMM3 - JavaScript - Arrays
Curso jpa java persistence API
Apostila php 01
Anúncio

Destaque (8)

ODP
13 banco-de-dados
PPTX
THREADS JAVA
ODP
12 threads
ODP
ODP
11 sockets
PPTX
Aulas de Java Avançado 2- Faculdade iDez 2010
PDF
Apresentacao Aula04 So
PPTX
Sistemas Distribuídos - Aula 11 - Sistemas Operacionais Distribuídos
13 banco-de-dados
THREADS JAVA
12 threads
11 sockets
Aulas de Java Avançado 2- Faculdade iDez 2010
Apresentacao Aula04 So
Sistemas Distribuídos - Aula 11 - Sistemas Operacionais Distribuídos
Anúncio

Semelhante a 8 collections-i (20)

PPTX
PPTX
Curso Java Básico - Aula 05
PPT
Classes Java , JDBC / Swing / Collections
PPTX
Slides collections
PPTX
Seminário - Java Collections
PDF
Introdução a estruturas de dados com java
PDF
Estrutura de dados
PDF
Java Collections - Tomaz Lavieri
PDF
Coleções Propriedade, Resources e Strings
PDF
Listas em estrutura de dados e algoritimos
PPTX
Curso de Java 7 - (ArrayList, Collections,(Set, List, Queue, Map)).pptx
PDF
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
PDF
PDF
Lista encadeada de inteiros
PDF
4234 mysql
PPTX
Curso Java Básico - Aula02
PDF
listas-encadeads-estaticas-fabio-rocha.pdf
Curso Java Básico - Aula 05
Classes Java , JDBC / Swing / Collections
Slides collections
Seminário - Java Collections
Introdução a estruturas de dados com java
Estrutura de dados
Java Collections - Tomaz Lavieri
Coleções Propriedade, Resources e Strings
Listas em estrutura de dados e algoritimos
Curso de Java 7 - (ArrayList, Collections,(Set, List, Queue, Map)).pptx
Curso de OO com C# - Parte 05 - Coleções genéricas e não-genéricas
Lista encadeada de inteiros
4234 mysql
Curso Java Básico - Aula02
listas-encadeads-estaticas-fabio-rocha.pdf

Mais de Thiago Oliveira (7)

ODP
7 interfaces
ODP
6 excecoes
ODP
5 oo-avançado
ODP
4 arrays
ODP
3 orientacao-objetos
ODP
2 controle-de-fluxo
ODP
1 introdução
7 interfaces
6 excecoes
5 oo-avançado
4 arrays
3 orientacao-objetos
2 controle-de-fluxo
1 introdução

Último (20)

PDF
Combate a Incêndio - Hidrantes,Mangotinhos, Mangueiras de Incêndio, Acessóri...
DOCX
PLANEJAMENTO QUINZENAL - 18.08.2025 à 29.08.2025 - 2ºANO - PROFESSORA PATRÍCI...
PPTX
sistema nervoso aula 1 faculdade uniplam
PPT
Caderno de Boas Práticas dos Professores Alfabetizadores.ppt
PPT
br-a-1692841480-passeio-pela-historia-da-arte-apresentacao-em-powerpoint_ver_...
PPT
Elementos constituintes do esquema argumentativo (tese, argumento, tema, pont...
PDF
Combate a Incêndio - Iluminação de Emergência e Sinalização de Segurança por ...
PPTX
Slides Lição 8, CPAD, Uma Igreja que Enfrenta os seus Problemas, 3Tr25.pptx
PDF
metabolismo energtico das clulas-131017092002-phpapp02.pdf
PPTX
BIÓTICOS E ABIOTICOS CADEIA ALIMENTAR.pptx
PPSX
A epistemologia de Wilheim G Leibniz.ppsx
PDF
manual-orientacao-asb_5a8d6d8d87160aa636f63a5d0.pdf
PPTX
Slides Lição 8, Betel, Jesus e a Mulher Adúltera, 3Tr25.pptx
PDF
Pecados desdenhados por muita gente (islamismo)
PPTX
1. A Cultura do Palco - muitos palcos, um espetáculo.pptx
PDF
Historia da Gastronomia Mundial por Daianna Marques dos Santos
PDF
[Slides] A Literatura no ENEM 2017 (1).pdf
PPTX
NR11 - Treinamento Direcao Defensiva - 2023.pptx
PDF
Ebook - Matemática_Ensino_Médio_Saeb_V1.pdf
PPTX
Ocupação e transformação dos territórios.pptx
Combate a Incêndio - Hidrantes,Mangotinhos, Mangueiras de Incêndio, Acessóri...
PLANEJAMENTO QUINZENAL - 18.08.2025 à 29.08.2025 - 2ºANO - PROFESSORA PATRÍCI...
sistema nervoso aula 1 faculdade uniplam
Caderno de Boas Práticas dos Professores Alfabetizadores.ppt
br-a-1692841480-passeio-pela-historia-da-arte-apresentacao-em-powerpoint_ver_...
Elementos constituintes do esquema argumentativo (tese, argumento, tema, pont...
Combate a Incêndio - Iluminação de Emergência e Sinalização de Segurança por ...
Slides Lição 8, CPAD, Uma Igreja que Enfrenta os seus Problemas, 3Tr25.pptx
metabolismo energtico das clulas-131017092002-phpapp02.pdf
BIÓTICOS E ABIOTICOS CADEIA ALIMENTAR.pptx
A epistemologia de Wilheim G Leibniz.ppsx
manual-orientacao-asb_5a8d6d8d87160aa636f63a5d0.pdf
Slides Lição 8, Betel, Jesus e a Mulher Adúltera, 3Tr25.pptx
Pecados desdenhados por muita gente (islamismo)
1. A Cultura do Palco - muitos palcos, um espetáculo.pptx
Historia da Gastronomia Mundial por Daianna Marques dos Santos
[Slides] A Literatura no ENEM 2017 (1).pdf
NR11 - Treinamento Direcao Defensiva - 2023.pptx
Ebook - Matemática_Ensino_Médio_Saeb_V1.pdf
Ocupação e transformação dos territórios.pptx

8 collections-i

  • 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