Skip to content

Instantly share code, notes, and snippets.

@marceloazvedo
Created August 1, 2020 13:44
Show Gist options
  • Save marceloazvedo/5cc0b5c0ffb184dbb9fa1f9caba1aa16 to your computer and use it in GitHub Desktop.
Save marceloazvedo/5cc0b5c0ffb184dbb9fa1f9caba1aa16 to your computer and use it in GitHub Desktop.
Your Accumulator
public static BiFunction<ArrayList<GenreMovies>, Movie, ArrayList<GenreMovies>> selectAndSeparate(String... genres) {
return (findeds, movie) -> {
for(String genre : genres) {
GenreMovies genreMovieToAdd = getGenreMoviesInListByGenre(genre, findeds);
if(genreMovieToAdd == null) {
genreMovieToAdd = new GenreMovies(genre);
findeds.add(genreMovieToAdd);
}
if(Arrays.asList(movie.getGenresAsArray()).contains(genre)) {
genreMovieToAdd.getMovies().add(movie);
}
}
return findeds;
};
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment