0
respostas

[Projeto] Avaliação de Filmes

Movie :

public class Movie {
    private String name;
    private List<Integer>  rating = new ArrayList<>();
    private double ratingAverage = 0;

    public Movie(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "Average Rating for "+this.name+ ": "+ratingAverage;
    }

    public void rateMovie(int score){
        rating.add(score);
        calculateAvgRating();
    }

    private void calculateAvgRating(){
        double ratingSum =  this.rating.stream()
                .reduce(0, Integer::sum);
        int totalRatings = this.rating.size();
        this.ratingAverage = ratingSum/totalRatings;
    }

    public String getName() {
        return name;
    }

    public List<Integer> getRating() {
        return rating;
    }

    public double getRatingAverage() {
        return ratingAverage;
    }
}

Main :

 public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);

        System.out.println("Enter the movie name : ");
        String movieName = scanner.nextLine();
        Movie movie =  new Movie(movieName);
        movie.rateMovie(5);
        movie.rateMovie(3);
        movie.rateMovie(2);
        movie.rateMovie(4);
        movie.rateMovie(3);
        movie.rateMovie(1);
        movie.rateMovie(3);
        System.out.println(movie);
    }