sortMovies function
- List<
Movie> movies, - MovieSortCriteria criteria
Sorts a list of movies based on the specified criteria.
Implementation
List<Movie> sortMovies(List<Movie> movies, MovieSortCriteria criteria) {
switch (criteria) {
case MovieSortCriteria.nameAsc:
movies.sort((a, b) => a.title.compareTo(b.title));
break;
case MovieSortCriteria.nameDesc:
movies.sort((a, b) => b.title.compareTo(a.title));
break;
case MovieSortCriteria.ratingAsc:
movies.sort((a, b) => a.voteAverage.compareTo(b.voteAverage));
break;
case MovieSortCriteria.ratingDesc:
movies.sort((a, b) => b.voteAverage.compareTo(a.voteAverage));
break;
case MovieSortCriteria.dateAsc:
movies.sort((a, b) => a.releaseDate.compareTo(b.releaseDate));
break;
case MovieSortCriteria.dateDesc:
movies.sort((a, b) => b.releaseDate.compareTo(a.releaseDate));
break;
}
return movies;
}