jemluz / java-basic

A starter java project to deal with basic concepts
1 stars 0 forks source link

Estruturas de dados: Coleções #3

Open jemluz opened 10 months ago

jemluz commented 10 months ago

Coleções

Uma collections nada mais é do que uma estrutura de dados que pode agrupar outros objetos.

image

Vídeo: Collections em Java Quando usar List, Map e Set

Todas as interfaces abaixo derivam da interface collections.

image

Artigo: Java Collections: Como utilizar Collections

image

jemluz commented 10 months ago

Listas

Atenção na forma de declarar uma lista: a interface List define o tipo, e a classe Arraylist implementa image

Para utilizar o List e o Arraylist, sempre precisamos importar suas declarações originais que vem da própria biblioteca de utils do java. Utilizando:

import java.util.ArrayList;
import java.util.List;

image image

Para manipular a lista (arraylist), adicionar, remover, etc, utilizamos métodos da própria instância.

import java.util.ArrayList;
import java.util.List;

public class EstruturaDeDados {

  public static void main(String[] args) {
    // List<E> => interface
    // ArrayList<E> => class
    List<String> texts = new ArrayList<String>();
    texts.add("random text");
    texts.add("another text");
    texts.add("other text");

    System.out.println(texts.get(0));

    // FOR IN
    for(String text : texts) {
      System.out.println("content:" + text);
    }

    // FOREACH VERBOSE FORM
    texts.forEach(text -> System.out.println("CONTENT:" + text));

    // FOREACH REDUCE FORM
    texts.forEach(System.out::println);
  }
}
jemluz commented 10 months ago

Hash Map

O hashmap é uma estrutura que possui pares de chave e valor. Porém o campo valor não aceita tipos primitivos. E o que deve ser feito é passar a classe correspondente ao tipo primitivo desejado.

Por exemplo se eu quero passar um valor int, na realidade irei passar uma classe Integer. image

inferencia com var image

para percorrer um hashmap, utilizamos o metodo entryset image

jemluz commented 10 months ago

HashSet

O hashset não possui indices. Possa ser que o elemento hora esteja num index 10, e hora num outro index aleatório. Pois o hashset não possui ordenação.

Ordenação -> Capacidade de percorrer a lista ordenadamente, como usando indices em um for. E resgatar tbm.

Classificação -> Capacidade de redistribuir os elementos sequencialmente pelos indices de acordo com algum parametro de organização. Como ordem alfabetica, asc ou desc por exemplo.

image

jemluz commented 8 months ago

Estudar streams

Mateus falou q usa muito, só vai