2017-01-03 1 views
-1

Мне нужна помощь в сортировке списка. Итак, у меня есть два списка, один из которых содержит сущности типа Sarcina (int Id, String desc) (позволяет вызвать его ls1) и тот, который содержит целые числа (позволяет называть его ls2). Оба списка имеют одинаковый размер. Я пытаюсь сортировать оба из них одновременно в порядке убывания, переставляя элементы из тех же позиций в обоих списках.Сортировка списка после другого в Java

Итак, если у меня есть ls1 (Sarcina1, Sarcina2, Sarcina3) и ls2 (3,5,4), и я сортирую ls2 как (5,4,3), я хочу иметь в ls1, отсортированном как (Sarcina2 , Sarcina3, Sarcina1).

спасибо.

+1

использовать карты и отсортировать ключ. Значения будут упорядочены в соответствии с ключом. – Kaushal28

+0

Итак, каков ваш вопрос? – Carcigenicate

+0

Исправьте меня, если я ошибаюсь, но вы хотите сортировать как целые, так и Sarcina списки вместе – prashant

ответ

3

Вы можете использовать Treemap, который поддерживает отсортированные ключи. Здесь вы хотите отсортировать свои целые числа, поэтому добавьте их в качестве ключей и добавьте свои строки в качестве значений Treemap. Он автоматически сортирует его. Поэтому постарайтесь коснуться, как следующее:

TreeMap tm = new TreeMap(); 

    // Put elements to the map 
    //Here "your_integer" is key and "your_string" is value in our Treemap 
    tm.put("your_integer","your_string"); 
    tm.put("your_integer","your_string"); 

Теперь tm является то, что вы хотите. который имеет строки, отсортированные по целым числам.

+0

вам понадобится две древовидные карты для этого тогда правильного .... один для сортировки по Sarcina ... и другие для сортировки по Integer. ... также вам придется реализовать Comparator для сортировки по строке в классе Sarcina – prashant

+0

@prashant, вы можете сослаться на эту ссылку для получения дополнительной информации. http://stackoverflow.com/questions/922528/how-to-sort-map-values-by-key-in-java – Kaushal28

+0

Дерево Карта будет сортировать только по ключам справа ... так вот, поскольку вы хотите сортировать как Integer и Sarcina ... вам понадобится 2 карты деревьев .. с ключом Integer и другим с ключом Sarcina ..... – prashant

Смежные вопросы