Crie uma classe Produto com atributos como nome, preco, e quantidade. Em seguida, crie uma lista de objetos Produto utilizando a classe ArrayList. Adicione alguns produtos, imprima o tamanho da lista e recupere um produto pelo índice. Implemente o método toString() na classe Produto para retornar uma representação em texto do objeto. Em seguida, imprima a lista de produtos utilizando o método System.out.println(). Modifique a classe Produto para incluir um construtor que aceite parâmetros para inicializar os atributos. Em seguida, crie objetos Produto utilizando esse novo construtor. Crie uma classe ProdutoPerecivel que herde de Produto. Adicione um atributo dataValidade e um construtor que utilize o construtor da classe mãe (super) para inicializar os atributos herdados. Crie um objeto ProdutoPerecivel e imprima seus valores.
import java.util.ArrayList;
import java.util.Scanner;
public class Produto {
private String nome;
private double preco;
private int quantidade;
Scanner sc = new Scanner(System.in);
ArrayList<String> nomeProduto = new ArrayList<>();
ArrayList<Double> precoProduto = new ArrayList<>();
ArrayList<Integer> quantidadeProduto = new ArrayList<>();
public Produto(String nome, double preco, Integer quantidade) {
this.nome = nome;
this.preco = preco;
this.quantidade = quantidade;
}
@Override
public String toString() {
return "Nome Produto: " + nomeProduto.toString() + " - " + "Preço: " + precoProduto.toString()
+ " - " + " Quantidade em estoque: " + quantidadeProduto.toString();
}
public void adicionaProdutos() {
System.out.println("===== ADICIONA PRODUTOS =====");
for (int i = 0; i < 2; i++) {
System.out.println("Insira o nome do produto: ");
this.setNome(sc.next());
nomeProduto.add(this.getNome());
System.out.println("Insira o preço do Produto: ");
this.setPreco(sc.nextDouble());
precoProduto.add(this.getPreco());
System.out.println("Insira a quantidade: ");
this.setQuantidade(sc.nextInt());
quantidadeProduto.add(this.getQuantidade());
}
for (int i = 0; i < nomeProduto.size(); i++) {
System.out.println(i + " - " + "Nome: " + nomeProduto.get(i).toString() + " - " +
"Preço: " + precoProduto.get(i).toString() + " - " +
"Quantidade: " + quantidadeProduto.get(i).toString());
}
System.out.println("\n===== Tamanho da Lista: =====");
System.out.println("Nome Produto: " + nomeProduto.size());
System.out.println("Preço Produto: " + precoProduto.size());
System.out.println("Quantidade Produto: " + quantidadeProduto.size());
System.out.println("\n===== RECUPERANDO PRODUTO PELO INDICE =====");
System.out.println("Recuperando primeiro Produto da lista: " + nomeProduto.get(0));
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public double getPreco() {
return preco;
}
public void setPreco(double preco) {
this.preco = preco;
}
public int getQuantidade() {
return quantidade;
}
public void setQuantidade(int quantidade) {
this.quantidade = quantidade;
}
}