cami-la / collections-java-api-2023

Este repositório é referente ao curso "Collection Framework API Java" e é uma valiosa contribuição para a comunidade de desenvolvedores Java, fornecendo exemplos práticos e recursos educacionais relacionados à poderosa API de coleções da linguagem Java.
https://web.dio.me/course/conhecendo-collections-java/learning/c5d6f4e1-6d05-4eea-93d8-d292c708999f
1.05k stars 766 forks source link

Problema de compilação #43

Open jorgedss opened 1 year ago

jorgedss commented 1 year ago

Olá! Segui todos os passos da aula "Operações Básicas List". Porém, ao tentar executar, para criar a lista ListaTarefas, o VS Code apresentou o erro "O valor da variável local listaTarefa não é usado".

cami-la commented 1 year ago

Olá. tudo bem?

Poderia mandar um print do Vs Code?

jorgedss commented 1 year ago

Tudo bem, Camila. O problema já foi resolvido. Obrigado! Boa noite.

Em qua., 4 de out. de 2023 17:31, Camila Cavalcante < @.***> escreveu:

Olá. tudo bem?

Poderia mandar um print do Vs Code?

— Reply to this email directly, view it on GitHub https://github.com/cami-la/collections-java-api-2023/issues/43#issuecomment-1747596099, or unsubscribe https://github.com/notifications/unsubscribe-auth/A43T3OBJOXPC7TIH77KMR63X5XBTBAVCNFSM6AAAAAA5SYV34KVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONBXGU4TMMBZHE . You are receiving this because you authored the thread.Message ID: @.***>

thiagorbessa commented 4 months ago

Eu também estou com erro de compilação, não está reconhecendo o main, alguém pode me ajudar? Em todos os códigos dentro da pasta da erro, segue as pastas..

https://github.com/thiagorbessa/dio-java-basico/tree/main/Collector/MapInterface https://github.com/thiagorbessa/dio-java-basico/tree/main/Collector/SetInterface

thiagorbessa commented 4 months ago

erro java Erro que aparece..

thiagorbessa commented 4 months ago

Olá, consegui resolver faltou importar o package OperacoesBasicas; Eu ainda nao entendi muito bem a diferença entre package e import. O package é quando o objeto está no mesmo pacote e o import é quando voce quer importar um objeto que está em outro pacote né?

cami-la commented 4 months ago

É bem simples mas realmente confunde, hehe. @thiagorbessa

No exemplo abaixo:

package main.java.list.OperacoesBasicas;

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

public class CarrinhoDeCompras {
  //atributos
  private List<Item> itemList;

  public CarrinhoDeCompras() {
    this.itemList = new ArrayList<>();
  }

  public void adicionarItem(String nome, double preco, int quantidade) {
    Item item = new Item(nome, preco, quantidade);
    this.itemList.add(item);
  }

  public void removerItem(String nome) {
    List<Item> itensParaRemover = new ArrayList<>();
    if (!itemList.isEmpty()) {
      for (Item i : itemList) {
        if (i.getNome().equalsIgnoreCase(nome)) {
          itensParaRemover.add(i);
        }
      }
      itemList.removeAll(itensParaRemover);
    } else {
      System.out.println("A lista está vazia!");
    }
  }

  public double calcularValorTotal() {
    double valorTotal = 0d;
    if (!itemList.isEmpty()) {
      for (Item item : itemList) {
        double valorItem = item.getPreco() * item.getQuant();
        valorTotal += valorItem; //valorTotal = valorTotal + valorItem;
      }
      return valorTotal;
    } else {
      throw new RuntimeException("A lista está vazia!");
    }
  }

  public void exibirItens() {
    if (!itemList.isEmpty()) {
      System.out.println(this.itemList);
    } else {
      System.out.println("A lista está vazia!");
    }
  }

  @Override
  public String toString() {
    return "CarrinhoDeCompras{" +
        "itens=" + itemList +
        '}';
  }

  public static void main(String[] args) {
    // Criando uma instância do carrinho de compras
    CarrinhoDeCompras carrinhoDeCompras = new CarrinhoDeCompras();

    // Adicionando itens ao carrinho
    carrinhoDeCompras.adicionarItem("Lápis", 2d, 3);
    carrinhoDeCompras.adicionarItem("Lápis", 2d, 3);
    carrinhoDeCompras.adicionarItem("Caderno", 35d, 1);
    carrinhoDeCompras.adicionarItem("Borracha", 2d, 2);

    // Exibindo os itens no carrinho
    carrinhoDeCompras.exibirItens();

    // Removendo um item do carrinho
    carrinhoDeCompras.removerItem("Lápis");

    // Exibindo os itens atualizados no carrinho
    carrinhoDeCompras.exibirItens();

    // Calculando e exibindo o valor total da compra
    System.out.println("O valor total da compra é = " + carrinhoDeCompras.calcularValorTotal());
  }
}

Espero que tenha clarificado um pouco o entendimento. Mas nem se preocupa, com a prática isso fica bem intuitivo!

Bons estudos para nós.

thiagorbessa commented 4 months ago

Olá venho aqui depois de duas semanas para dizer que ficou bem intuitivo mesmo kkkk Realmente essa confusão tomo meu tempo mas valeu para não errar mais. Gostaria de compartilhar um erro bem comum para iniciantes que eu tive, parece bobo mas atrapalha. Quando forem criar um pacote no eclipse ele deve ter o caminho completo, no inicio eu tinha o hábito de apagar o caminho e só escrever o nome da pasta por exemplo em estudos.spring_security_jwt se eu fosse criar um pacote controller, eu apagava no Name tudo que ja estava escrito e escrevia controller, com isso ele ficava fora do arquivo principal e não achava a pasta o correto é colocar o nome assim estudos.spring_security_jwt.controller.