Как отсортировать 2 зависимых ArrayLists? - PullRequest
0 голосов
/ 08 апреля 2019

У меня есть 2 Arraylists. Один содержит название песни, а другой - местоположение песни. Как я могу отсортировать их вместе?

Ответы [ 3 ]

0 голосов
/ 08 апреля 2019

Создание пользовательского класса Song

class Song {
    private String songName, SongUrl;

    public String getSongName() {
        return songName;
    }

    public void setSongName(String songName) {
        this.songName = songName;
    }

    public String getSonglink() {
        return Songlink;
    }

    public void setSonglink(String songlink) {
        Songlink = songlink;
    }
}

Вместо использования двух списков массивов, создайте отдельный массив Arraylist с этим классом и используйте его в качестве источника данных.

List<Song> songData = new ArrayList<Song>();

Теперь вы можете легко отсортировать это, используя Comparator

Collections.sort(songData, new Comparator<Song>() {
    @Override
    public int compare(Song o1, Song o2) {
        return o1.getSongName().compareTo(o2.getSongName());
    }
});
0 голосов
/ 08 апреля 2019
//loop start
     //some code
     arrayList.add(currenttitle+"////.////"+currentartist+" | "+currentalbum+"////.////"+currentlocation);
     //some code
//loop end
Collections.sort(arrayList,String.CASE_INSENSITIVE_ORDER);
for(int i=0;i<arrayList.size();i++) {
    arrayListloc.add(arrayList.get(i).split("////.////")[2]);
}

Это исправило мои проблемы.

0 голосов
/ 08 апреля 2019

Создайте Class Как

public class Song{
  private String title;
  private String location;
}

Создайте List<Song> и скопируйте все название и соответствующее местоположение песни в том же объекте и сохраните их в новый список.а теперь сортируйте новый список.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...