Я столкнулся с проблемой сортировки строки с числами с помощью компаратора, где мои данные: {7,5 мг/5 мл, 5 мг, 5 мг/5 мл, 10 мг, 5 мг/15 мл, 5 мг/5 мл, образец, раздел}Сортировка с использованием компаратора по строке с числами и специальным символом
Я попытался код ниже
Collections.sort(List<Record> records, new Comparator<Record>(){
@Override
public int compare(Record o1, Record o2) {
return o1.compareTo(o2);
}
}
Am получает следующий вывод, когда я вроде в порядке возрастания {10 мг, 5 мг , 5 мг/5 мл, 5 мг/15 мл, 5 мг/5 мл, 7,5 мг/5 мл, образец}
В приведенном выше значении знаменатель не сортируется должным образом для серии 5 мг, а также сортировка проводится как сортировка по типу, где 10 мг отображается до 5 мг, что является неправильным. Требуется выход:
{5 мг, 5 мг/5 мл, 5 мг/5 мл, 5 мг/15 мл, 7,5 мг/5 мл, 10 мг, образец, раздел}
Пожалуйста, помогите мне решить эту проблему.
Нет, мы не можем - мы не делаем вашу работу за вас. Вы начинаете с написания собственного кода; а затем, когда у вас возникнут определенные проблемы, вы пишете вопрос с кодом и всеми подробностями, необходимыми для того, чтобы помочь вам. Просто посмотрите [помощь], чтобы понять, как работает это сообщество; и как/что спросить. – GhostCat
Я думаю, что если вы хотите иметь выход в указанном вами порядке, вы должны использовать лексикографический порядок в компараторе. –
Просьба предоставить нам код. – Dreamer