Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Сортировка елементов Vector


Автор: Andy_L20066 8.6.2008, 21:33
Привет, может кто то сможет подсказать....
Припустим у нас есть вектор:
Код

Vector v = new Vector();
v.add("a:500");
v.add("neptun:500");      
v.add("b:500");   
   

Collections.sort(v) не сортирует по возрастанию в данном случае.... Посоветуйте как лучше заимплементить сортировку таких елементов вектора? 
У меня есть мнение, что нужно написать компаратор, который сравнивал бы только String, остальное - нет...

Автор: makados 8.6.2008, 22:42
скорее всего, написать свой компаратор будет самым быстрым и гибким решением

Автор: LSD 8.6.2008, 23:17
Цитата(Andy_L20066 @  8.6.2008,  22:33 Найти цитируемый пост)
Collections.sort(v) не сортирует по возрастанию в данном случае....

Неправда, Collections.sort() прекрастно сортирует в данном случае. А если тебя не устраивает, то как он сортирует, то может объяснищь, чего ты от него ждешь в таком случае?

Автор: Andy_L20066 9.6.2008, 11:39
 Может для данного случая оно и работает... но если к примеру ввести елементы: [Annot:500, NEPTUN:500, a:500, b:500]
почему нету alphabetical order в отсортированном векторе... 
тоесть я должен был получить что-то вроде: [Annot:500, a:500,  b:500, NEPTUN:500]

Автор: LSD 9.6.2008, 11:49
Цитата(Andy_L20066 @  9.6.2008,  12:39 Найти цитируемый пост)
тоесть я должен был получить что-то вроде: [Annot:500, a:500,  b:500, NEPTUN:500]

Это ни разу не алфавитный порядок. Символ : идет после латиницы и тут все правильно.
Цитата(LSD @  9.6.2008,  00:17 Найти цитируемый пост)
А если тебя не устраивает, то как он сортирует, то может объяснищь, чего ты от него ждешь в таком случае?

Автор: Maksym 9.6.2008, 11:50
Andy_L20066
Если хочешь решить проблему раз и навсегда -- реализуй компаратор.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)