Solucionado (ver solução)
Solucionado
(ver solução)
6
respostas

[Minha Solução] Desafio Criar Plataforma de Audio

public interface Controle {

        void classificar();
    }

public class Audio {
    private String titulo;
    private int duracao;
    private int totalReproducoes;
    private int curtidas;
    private int classificacao;

    public void curtir() {

    }

    public void reproduzir() {

    }

    public String getTitulo() {
        return titulo;
    }

    public void setTitulo(String titulo) {
        this.titulo = titulo;
    }

    public int getDuracao() {
        return duracao;
    }

    public void setDuracao(int duracao) {
        this.duracao = duracao;
    }

    public int getTotalReproducoes() {
        return totalReproducoes;
    }

    public void setTotalReproducoes(int totalReproducoes) {
        this.totalReproducoes = totalReproducoes;
    }

    public int getCurtidas() {
        return curtidas;
    }

    public void setCurtidas(int curidas) {
        this.curtidas = curidas;
    }

    public int getClassificacao() {
        return classificacao;
    }

    public void setClassificacao(int classificacao) {
        this.classificacao = classificacao;
    }
}

import java.util.Scanner;
import static java.lang.System.exit;

public class Musicas extends Audio implements Controle {

    private int selecaoMusica;
    private int opcaobanda;

    Scanner sc = new Scanner(System.in);

    @Override
    public void classificar() {
        this.setClassificacao(this.getCurtidas());
        if (this.getClassificacao() > 0 && this.getClassificacao() < 4) {
            System.out.println("\n===== ALURA HITS INFORMA ===== ");
            System.out.println("Classificação da música não é das melhores :( " + this.getClassificacao());
        } else if (this.getClassificacao() >= 4 && this.getClassificacao() <= 7) {
            System.out.println("\n===== ALURA HITS INFORMA ===== ");
            System.out.println("Classificação da música é intermediária :| " + this.getClassificacao());
        } else {
            System.out.println("\n===== ALURA HITS INFORMA ===== ");
            System.out.println("Classificação é muito alta! Pessoal esta curtindo muito :) " + this.getClassificacao());
        }exit(0);
    }

    @Override
    public void reproduzir() {
        System.out.println("Em reprodução atualmente: " + this.getTitulo());
    }

    @Override
    public void curtir() {
        System.out.println("Esta curtindo o som? Não deixe de dar o seu like!");
        System.out.println("1 = Digite para curtir");
        int selecaoCurtida = sc.nextInt();
        this.setCurtidas(this.getCurtidas() + selecaoCurtida);
        System.out.println("Total de curtidas anterior é: " + (this.getCurtidas() - selecaoCurtida));
        System.out.println("Total de curtidas da musica: " + this.getTitulo() +
                            " é: " + this.getCurtidas());
    }

    public void selecionarBandas() {
        System.out.println("===== BEM VINDO AO ALURA HITS =====");
        System.out.println("Selecione a banda: ");
        System.out.println("1 - IRON MAIDEN");
        System.out.println("2 - SYSTEM OF A DOWN");
        System.out.println("3 - LINKIN PARK");
        this.setOpcaobanda(sc.nextInt());
    }
6 respostas

Continuação Classe Musicas:


public void selecionarMusicas() {
        switch (this.getOpcaobanda()) {
            case 1:
                System.out.println("Banda Selecionada: IRON MAIDEN");
                System.out.println("\nListando músicas da banda: ");
                System.out.println("Selecione a música abaixo: ");
                System.out.println("1 - Fear Of The Dark");
                System.out.println("2 - Run To The Hills");
                this.setSelecaoMusica(sc.nextInt());
                if (this.getSelecaoMusica() == 1) {
                    this.setTitulo("Fear Of The Dark");
                    this.setDuracao(7);
                    this.setCurtidas(4);
                    this.setClassificacao(4);
                    System.out.println("===== OPÇÃO SELECIONADA =====");
                    System.out.println("Banda: IRON MAIDEN");
                    System.out.println("Duração da música: " + this.getDuracao() + " minutos.");
                    System.out.println("Total de curtidas: " + this.getCurtidas());
                    this.reproduzir();
                    this.curtir();
                    this.classificar();
                    break;
                } else if (this.getSelecaoMusica() == 2) {
                    this.setTitulo("Run To The Hills");
                    this.setDuracao(4);
                    this.setCurtidas(7);
                    this.setClassificacao(7);
                    System.out.println("===== OPÇÃO SELECIONADA =====");
                    System.out.println("Banda: IRON MAIDEN");
                    System.out.println("Duração da música: " + this.getDuracao() + " minutos.");
                    System.out.println("Total de curtidas: " + this.getCurtidas());
                    this.reproduzir();
                    this.curtir();
                    this.classificar();
                    break;
                }
            case 2:
                System.out.println("Banda Selecionada: SYSTEM OF A DOWN");
                System.out.println("\nListando músicas da banda: ");
                System.out.println("Selecione a música abaixo: ");
                System.out.println("1 - B.Y.O.B");
                System.out.println("2 - Toxicity");
                this.setSelecaoMusica(sc.nextInt());
                if (this.getSelecaoMusica() == 1) {
                    this.setTitulo("B.Y.O.B");
                    this.setDuracao(4);
                    this.setCurtidas(1);
                    this.setClassificacao(1);
                    System.out.println("===== OPÇÃO SELECIONADA =====");
                    System.out.println("Banda: SYSTEM OF A DOWN");
                    System.out.println("Duração da música: " + this.getDuracao() + " minutos.");
                    System.out.println("Total de curtidas: " + this.getCurtidas());
                    this.reproduzir();
                    this.curtir();
                    this.classificar();
                    break;
                } else if (this.getSelecaoMusica() == 2) {
                    this.setTitulo("Toxicity");
                    this.setDuracao(3);
                    this.setCurtidas(8);
                    this.setClassificacao(8);
                    System.out.println("===== OPÇÃO SELECIONADA =====");
                    System.out.println("Banda: SYSTEM OF A DOWN");
                    System.out.println("Duração da música: " + this.getDuracao() + " minutos.");
                    System.out.println("Total de curtidas: " + this.getCurtidas());
                    this.reproduzir();
                    this.curtir();
                    this.classificar();
                    break;
                }
            case 3:
                System.out.println("Banda Selecionada: LINKIN PARK");
                System.out.println("\nListando músicas da banda: ");
                System.out.println("Selecione a música abaixo: ");
                System.out.println("1 - In the End");
                System.out.println("2 - Numb");
                this.setSelecaoMusica(sc.nextInt());
                if (this.getSelecaoMusica() == 1) {
                    this.setTitulo("In the End");
                    this.setDuracao(3);
                    this.setCurtidas(7);
                    this.setClassificacao(7);
                    System.out.println("===== OPÇÃO SELECIONADA =====");
                    System.out.println("Banda: LINKIN PARK");
                    System.out.println("Duração da música: " + this.getDuracao() + " minutos.");
                    System.out.println("Total de curtidas: " + this.getCurtidas());
                    this.reproduzir();
                    this.curtir();
                    this.classificar();
                    break;
                }

Continuação Classe Musicas:


else if (this.getSelecaoMusica() == 2) {
                    this.setTitulo("Numb");
                    this.setDuracao(3);
                    this.setCurtidas(5);
                    this.setClassificacao(5);
                    System.out.println("===== OPÇÃO SELECIONADA =====");
                    System.out.println("Banda: LINKIN PARK");
                    System.out.println("Duração da música: " + this.getDuracao() + " minutos.");
                    System.out.println("Total de curtidas: " + this.getCurtidas());
                    this.reproduzir();
                    this.curtir();
                    this.classificar();
                    break;
                }
        }
    }

    public int getSelecaoMusica() {
        return selecaoMusica;
    }

    public void setSelecaoMusica(int selecaoMusica) {
        this.selecaoMusica = selecaoMusica;
    }

    public int getOpcaobanda() {
        return opcaobanda;
    }

    public void setOpcaobanda(int opcaobanda) {
        this.opcaobanda = opcaobanda;
    }
}

public class Principal {
    public static void main(String[] args) {
        Musicas musica = new Musicas();
        musica.selecionarBandas();
        musica.selecionarMusicas();
        musica.curtir();
        musica.classificar();
    }
}

Execução 1:

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


Execução 2:

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

Execução 3:

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

solução!

Bom dia!

Sua resolução ficou excelente! Você fez um ótimo uso do aprendizado.

Parabéns pelo empenho nos estudos e continue praticando.

Para que mais pessoas consigam visualizar a sua solução proposta, é recomendado que você marque este tópico como solucionado. Assim pode ajudar ainda mais pessoas :)

Bons estudos!