Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Meu Exercicio Extra 2] Utilização de Arrays

Gostaria de compartilhar com os colegas o exercício extra que finalizei, como forma de melhorar o entendimento referente aos Arrays. Neste, foram utilizados interface "Contador" para realizar o controle da contagem da quantidade de produtos, super classe "SecaoHortiFruti" contendo os atributos dos produtos, classes "Hortalicas" e "Frutas" onde ambas extend a super classe e implementa a interface.


public interface Contador {

    public void contaQuantidade();
}

public class SecaoHortifruti {
    private String nome;
    private int quantidade;

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public int getQuantidade() {
        return quantidade;
    }

    public void setQuantidade(int quantidade) {
        this.quantidade = quantidade;
    }
}

import java.util.ArrayList;
import java.util.Scanner;

public class Hortalicas extends SecaoHortifruti implements Contador {

    private int soma;
    ArrayList<String> hortalica = new ArrayList<>();
    ArrayList<Integer> quantidade = new ArrayList<>();

    @Override
    public String toString() {
        return "Lista das Hortaliças: " + hortalica.toString()
                + "Quantidade: " + quantidade.toString() + " cadastrados no sistema!";
    }

    @Override
    public void contaQuantidade() {
        for (int i = 0; i < quantidade.size(); i++) {
            soma = soma + quantidade.get(i);
        }
        System.out.println("===== TOTAL DE HORTALIÇAS NO ESTOQUE =====");
        System.out.println("\nA soma total de Hortaliças no Estoque é: " + soma);
    }

    public void entrarDadosHortalicas() {
        Scanner sc = new Scanner(System.in);
        for (int i = 0; i < 5; i++) {
            System.out.println("==== CADASTRO DE HORTALIÇAS =====");
            System.out.println("Insira o nome de 5 hortaliças: ");
            this.setNome(sc.next());
            hortalica.add(this.getNome());
            System.out.println("Insira a quantidade: ");
            this.setQuantidade(sc.nextInt());
            quantidade.add(this.getQuantidade());

            System.out.println(i + " - " + "Hortaliça: " + hortalica.get(i).toString() +
                        " Quantidade: " + "(" + quantidade.get(i) + ")" + " cadastrado com sucesso!");
        }
    }

    public void sairDadosHortalicas() {
        System.out.println("===== SAÍDA DADOS =====");
        for (int i = 0; i < hortalica.size(); i++)
            System.out.println("Lista das Hortaliças: " + hortalica.get(i).toString()
                    + " - " + "Quantidade: " + quantidade.get(i).toString() +
                    " cadastrados no sistema!");
    }
}

import java.util.ArrayList;
import java.util.Scanner;

public class Frutas extends SecaoHortifruti implements Contador {

    private int soma;
    ArrayList<String> fruta = new ArrayList<>();
    ArrayList<Integer> quantidade = new ArrayList<>();

    @Override
    public String toString() {
        return "Lista Frutas: " + fruta.toString()
                + "Quantidade: " + quantidade.toString() + " cadastrados no sistema!";
    }

    @Override
    public void contaQuantidade() {
        for (int i = 0; i < quantidade.size(); i++) {
            soma = soma + quantidade.get(i);
        }
        System.out.println("===== TOTAL DE FRUTAS NO ESTOQUE =====");
        System.out.println("\nA soma total de Frutas no Estoque é: " + soma);
    }

    public void entrarDadosFrutas() {
        Scanner sc = new Scanner(System.in);
        for (int i = 0; i < 5; i++) {
            System.out.println("==== CADASTRO DE FRUTAS =====");
            System.out.println("Insira o nome de 5 frutas: ");
            this.setNome(sc.next());
            fruta.add(this.getNome());
            System.out.println("Insira a quantidade: ");
            this.setQuantidade(sc.nextInt());
            quantidade.add(this.getQuantidade());

            System.out.println(i + " - " + "Fruta: " + fruta.get(i).toString() +
                    " Quantidade: " + "(" + quantidade.get(i) + ")" + " cadastrado com sucesso!");
        }
    }

    public void sairDadosFrutas() {
        System.out.println("\n===== SAÍDA DADOS =====");
        for (int i = 0; i < fruta.size(); i++)
            System.out.println("Lista de frutas: " + fruta.get(i).toString()
                    + " - " + "Quantidade: " + quantidade.get(i).toString() +
                    " cadastrados no sistema!");
    }
}

public class Principal {
    public static void main(String[] args) {
        Hortalicas hortalica = new Hortalicas();
        hortalica.entrarDadosHortalicas();
        hortalica.sairDadosHortalicas();
        hortalica.contaQuantidade();
        Frutas fruta = new Frutas();
        fruta.entrarDadosFrutas();
        fruta.sairDadosFrutas();
        fruta.contaQuantidade();
    }
}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade


Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta
solução!

Olá, Carlos.

Tudo bem?

Obrigado por compartilhar seu exercício aqui com a gente. Você aplicou bem os conceitos de herança, interfaces e arrays, especialmente na criação das classes "Hortalicas" e "Frutas" que estendem a superclasse e implementam a interface "Contador". Isso demonstra uma boa compreensão da estruturação de código e do uso de listas para gerenciar os produtos em Java.

Continue assim, com essa dedicação. Parabéns!

Qualquer coisa manda aqui. Bons estudos.