0% acharam este documento útil (0 voto)
13 visualizações14 páginas

ArrayList - Presentation

O documento apresenta uma introdução ao Framework de Coleções em Java, destacando a importância de suas interfaces e classes para a manipulação eficiente de coleções de objetos. Foca na interface List e sua implementação ArrayList, explicando suas características, métodos e complexidade temporal das operações. Além disso, propõe exercícios práticos para aplicar o conhecimento adquirido sobre ArrayList.

Enviado por

adbsj
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
13 visualizações14 páginas

ArrayList - Presentation

O documento apresenta uma introdução ao Framework de Coleções em Java, destacando a importância de suas interfaces e classes para a manipulação eficiente de coleções de objetos. Foca na interface List e sua implementação ArrayList, explicando suas características, métodos e complexidade temporal das operações. Além disso, propõe exercícios práticos para aplicar o conhecimento adquirido sobre ArrayList.

Enviado por

adbsj
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 14

Introdução ao

Framework de
Coleções em Java
ENTENDENDO ARR AYLIST
Definição de Framework de Coleções:
◦ Um framework de coleções em Java se refere a um conjunto de interfaces e classes que
fornecem estruturas de dados flexíveis e eficientes para armazenar e manipular coleções de
objetos. O objetivo principal desse framework é oferecer uma variedade de implementações
de estruturas de dados comuns, como listas, conjuntos, mapas, entre outros, além de algoritmos
para operar sobre essas coleções.
Importância em JAVA
Reutilização de código: O framework de coleções fornece implementações padronizadas de
estruturas de dados comuns, como listas, conjuntos e mapas. Isso permite que os
desenvolvedores reutilizem código existente em vez de escrever suas próprias
implementações personalizadas.

Framework
Eficiência: As implementações fornecidas pelo framework de coleções são otimizadas para
desempenho e eficiência. Isso significa que as operações comuns, como adicionar, remover e
acessar elementos, são executadas de forma rápida e eficiente.

de Coleções
Flexibilidade: O framework de coleções oferece uma variedade de estruturas de dados para
atender às diferentes necessidades de programação. Por exemplo, você pode escolher entre
ArrayList, LinkedList ou Vector para armazenar uma lista de elementos, dependendo dos
requisitos específicos do seu aplicativo.

Segurança e tipo-safety: As coleções em Java são tipadas, o que significa que você pode
especificar o tipo de elementos que a coleção pode conter. Isso ajuda a evitar erros de tipo em
tempo de execução e torna o código mais seguro e fácil de entender.
API consistente: O framework de coleções em Java fornece uma API consistente e intuitiva
para manipular coleções de elementos. Isso facilita o desenvolvimento de código claro e
legível e simplifica a manutenção do código ao longo do tempo.
Suporte a iteração: O framework de coleções oferece suporte a iteração fácil e eficiente sobre
os elementos de uma coleção usando loops for-each, o que simplifica o processo de
processamento de dados.
Interface Collection
•Interface Collection
• A interface Collection é a raiz da hierarquia de interfaces de
coleções em Java. Ela define operações básicas comuns a
todas as implementações de coleções, como adicionar
elementos, remover elementos, verificar se um elemento está
presente, obter o tamanho da coleção, entre outros.
Interface LIST
Definição da interface List

• A List é uma coleção ordenada que pode conter elementos duplicados. Ela permite o controle preciso sobre onde cada
elemento é inserido e pode acessar elementos pelo seu índice (posição na lista).

Características da List (ordem, duplicatas)

• Ordenada: Os elementos na lista seguem uma sequência específica.


• Elementos Duplicados: A lista pode conter elementos duplicados, ou seja, elementos que são iguais.
• Acesso por Índice: Cada elemento tem um índice associado que pode ser usado para acessar o elemento.

Métodos específicos da List (get, set, indexOf, etc.)

• get(int index): Retorna o elemento na posição especificada na lista.


• set(int index, E element): Substitui o elemento na posição especificada na lista pelo elemento especificado.
• indexOf(Object o): Retorna o índice da primeira ocorrência do elemento especificado na lista, ou -1 se a lista não contém
o elemento.
• add(int index, E element): Insere o elemento especificado na posição especificada na lista.
• remove(int index): Remove o elemento na posição especificada na lista.
Introdução ao ArrayList

O que é • Um ArrayList em Java é uma implementação da interface List que utiliza um array
dinâmico para armazenar elementos. Isso significa que o tamanho do ArrayList pode
aumentar ou diminuir dinamicamente à medida que elementos são adicionados ou

ArrayList? removidos, proporcionando uma maior flexibilidade em comparação com arrays


tradicionais.

• Quando você precisa de uma coleção de elementos com tamanho dinâmico.

Quando usar • Quando você precisa realizar operações de adição ou remoção de elementos com
frequência.
• Quando você precisa trabalhar com tipos de dados genéricos (ArrayLists podem ser

ArrayList: parametrizados com tipos específicos usando generics).


• Quando você precisa de métodos convenientes fornecidos pela classe ArrayList para
manipular a coleção de elementos de forma eficiente.
Acesso: Operações de acesso, como get e set, são de tempo
constante, O(1) porque elas acessam diretamente o
elemento em um array interno pelo índice.

Adição: Adicionar um elemento no final da lista, usando


add(E e), é uma operação de tempo constante, O(1)na
maioria dos casos. No entanto, se o array interno precisar

Complexidade ser redimensionado (o que acontece quando a lista atinge


sua capacidade máxima), a complexidade pode ser

Temporal - O(n)para essa operação específica, pois todos os elementos


precisam ser copiados para um novo array.
ArrayList Inserção/Remoção: Inserir ou remover elementos de
qualquer lugar que não seja o final da lista tem uma
complexidade temporal linear, O(n) porque pode exigir o
deslocamento de elementos para manter a ordem da lista1.

Iteração: Iterar sobre todos os elementos de um ArrayList


tem uma complexidade temporal linear, O(n), onde n é o
número de elementos na lista.
Criando
Removendo
Alterando
em
ArrayList
Criando
Removendo
Alterando
em
ArrayList
ArrayList
Exemplos:

add

addAll

remove

removeAll
ArrayList
set;

size;

isEmpty;

contains;

clear;
ArrayList
indexOf;

lastIndexOf;

toArray;
ArrayList
Add objeto;
ArrayList
CL AS S E AL UNO;
Exercícios propostos:
1 . Crie um programa que leia 10 nomes de pessoas e os armazene em um ArrayList. Em
seguida, permita que o usuário digite um nome para buscar na lista. Se o nome for
encontrado, imprima a posição em que ele se encontra.

2. Crie um programa que leia 10 números inteiros e os armazene em um ArrayList. Em


seguida, imprima a quantidade de números pares e ímpares no ArrayList.

3. Utilizando a estrutura ArrayList, crie um programa que armazene números inteiros


pares de 0 a 10. Em seguida, faça o programa exibir a lista dos valores armazenados.
Logo depois, solicite para o usuário um valor inteiro positivo menor ou igual a 10 para
ser removido (Esse valor deve ser validado), após a remoção, mostre a lista atualizada.

Você também pode gostar