I
I
Ilya2018-04-17 12:46:15
Java
Ilya, 2018-04-17 12:46:15

How to sort an array of objects alphabetically?

I'm working with an ActivityTwo that displays a list of movies.
There is an array that consists of films - instances of the FilmItem class .
This is how I declare an array at the beginning of the ActivityTwo class:

private ArrayList<FilmItem> filmItems = new ArrayList<>();

This is how I create a movie in the onCreate() method - an instance of the FilmItem class:
FilmItem filmItem = new FilmItem();
filmItem.setPoster(R.drawable.poster_2);
filmItem.setName("Убийство в Восточном экспрессе");
filmItem.setCountry("США, Великобритания, Мальта, Канада");
filmItem.setRating(7);
filmItem.setDesc("Путешествие на одном из самых роскошных поездов Европы неожиданно превращается в одну из самых стильных и захватывающих загадок в истории. Фильм рассказывает историю тринадцати пассажиров поезда, каждый из которых находится под подозрением. И только сыщик должен как можно быстрее разгадать головоломку, прежде чем преступник нанесет новый удар.");

This is how I add a movie to the array:
filmItems.add(filmItem);
Same with the rest of the movies.
How to sort an array alphabetically in ascending and descending order? That is, if I have three films with the names: "Officers", "Assa" and "Spider-Man" - when sorted alphabetically in ascending order, they will be in this order: "Assa", "Officers" and "Spider-Man".

Answer the question

In order to leave comments, you need to log in

1 answer(s)
D
davidnum95, 2018-04-17
@sidorchik

Collections.sort(filmItems , new Comparator<FilmItem>() {
    @Override
    public int compare(FilmItem i1, FilmItem i2) {
        return i1.name.compareToIgnoreCase(i2.name);
    }
});

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question