Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Сортировка ArrayList / 18 сообщений из 18, страница 1 из 1
30.03.2015, 10:50
    #38920792
VaneS Ri_lax
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
Здравствуйте, у меня есть переменная типа ArrayList в которой есть элементы типа String, каждая строка имеет вид:
3|слово|слово|слово|слово|слово|слово
1|слово|слово|слово|слово|слово|слово
7|слово|слово|слово|слово|слово|слово
5|слово|слово|слово|слово|слово|слово
9|слово|слово|слово|слово|слово|слово
Как мне сделать так чтобы отсортировать этот список так чтобы он имел вид:
1|слово|слово|слово|слово|слово|слово
3|слово|слово|слово|слово|слово|слово
5|слово|слово|слово|слово|слово|слово
7|слово|слово|слово|слово|слово|слово
9|слово|слово|слово|слово|слово|слово
...
Рейтинг: 0 / 0
30.03.2015, 10:56
    #38920799
denis111111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
VaneS Ri_lax,

Сортируйте вручную или испульзуйте SortedSet<WrapForString> set = new TreeSet<>();
...
Рейтинг: 0 / 0
30.03.2015, 11:02
    #38920815
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
Collections.sort() не?
...
Рейтинг: 0 / 0
30.03.2015, 12:08
    #38920968
VaneS Ri_lax
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
BlazkowiczCollections.sort() не?
Я понял что этим методом нужно сортировку делать, но вот как им пользоваться не могу понять
...
Рейтинг: 0 / 0
30.03.2015, 12:10
    #38920976
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
VaneS Ri_lax,

Жесть какая.

Код: java
1.
2.
3.
 ArrayList myList2Sort = ...
 Collections.sort(myList2Sort);
 //Готово!
...
Рейтинг: 0 / 0
30.03.2015, 12:14
    #38920982
lleming
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
VaneS Ri_laxBlazkowiczCollections.sort() не?
Я понял что этим методом нужно сортировку делать, но вот как им пользоваться не могу понять

КО подсказывает чтобы воспользоваться методом его нужно вызвать.

В туториалах вроде разжевано
https://docs.oracle.com/javase/tutorial/collections/algorithms/#sorting
Нужно все лишь компаратор написать чтобы первый символ извлекал приводил к longи сравнивал по нему
...
Рейтинг: 0 / 0
30.03.2015, 12:23
    #38920996
VaneS Ri_lax
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
BlazkowiczVaneS Ri_lax,

Жесть какая.

Код: java
1.
2.
3.
 ArrayList myList2Sort = ...
 Collections.sort(myList2Sort);
 //Готово!


Понимаю, но я начинающий в Java, спасибо большое!)
...
Рейтинг: 0 / 0
30.03.2015, 13:39
    #38921124
Сергей Арсеньев
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
llemingНужно все лишь компаратор написать чтобы первый символ извлекал приводил к longи сравнивал по нему
Скорее первые циферки до ' | ', а при равенстве уже по остатку строки.
...
Рейтинг: 0 / 0
30.03.2015, 13:52
    #38921145
Alexey Tomin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
VaneS Ri_laxЗдравствуйте, у меня есть переменная типа ArrayList в которой есть элементы типа String, каждая строка имеет вид:
3|слово|слово|слово|слово|слово|слово
1|слово|слово|слово|слово|слово|слово
7|слово|слово|слово|слово|слово|слово
5|слово|слово|слово|слово|слово|слово
9|слово|слово|слово|слово|слово|слово
Как мне сделать так чтобы отсортировать этот список так чтобы он имел вид:
1|слово|слово|слово|слово|слово|слово
3|слово|слово|слово|слово|слово|слово
5|слово|слово|слово|слово|слово|слово
7|слово|слово|слово|слово|слово|слово
9|слово|слово|слово|слово|слово|слово

7|слово|слово|слово|слово|слово|слово
12|а_слово|слово|слово|слово|слово|слово
12|слово|слово|слово|слово|слово|слово

Как должны отсортироваться?
...
Рейтинг: 0 / 0
30.03.2015, 14:29
    #38921205
Alexey Tomin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
llemingНужно все лишь компаратор написать чтобы первый символ извлекал приводил к longи сравнивал по нему

А точно до | не будет символов? А может будет 1a? a1? Или просто кто-то вместо 10 наберёт 1O :)
...
Рейтинг: 0 / 0
30.03.2015, 15:31
    #38921317
Atum1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
может так ???

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.Set;
import java.util.TreeSet;


public class NewClass {
    public static void main(String[] args) {
        List<String> list = Arrays.asList("3|слово|слово|слово|слово|слово|слово",
                "1|слово|слово|слово|слово|слово|слово",
                "7|слово|слово|слово|слово|слово|слово",
                "5|слово|слово|слово|слово|слово|слово",
                "9|слово|слово|слово|слово|слово|слово");
        System.out.println(list);
        
        
        
      Comparator comparator =  new Comparator<String>() {

            @Override
            public int compare(String s1, String s2) {
               String dx1 = s1.split("\\|")[0];
               String dx2 = s2.split("\\|")[0];
              Integer i1= Integer.parseInt(dx1);
              Integer i2= Integer.parseInt(dx2);
              return i1.compareTo(i2);
                
            }
        };
        
        Set<String> set = new TreeSet<>(comparator);
        
        
        set.addAll(list);
        System.out.println(set);
        
        
        Collections.sort(list, comparator);
        
        System.out.println(list);
    }
   
}



[3|слово|слово|слово|слово|слово|слово, 1|слово|слово|слово|слово|слово|слово, 7|слово|слово|слово|слово|слово|слово, 5|слово|слово|слово|слово|слово|слово, 9|слово|слово|слово|слово|слово|слово]

[1|слово|слово|слово|слово|слово|слово, 3|слово|слово|слово|слово|слово|слово, 5|слово|слово|слово|слово|слово|слово, 7|слово|слово|слово|слово|слово|слово, 9|слово|слово|слово|слово|слово|слово]

[1|слово|слово|слово|слово|слово|слово, 3|слово|слово|слово|слово|слово|слово, 5|слово|слово|слово|слово|слово|слово, 7|слово|слово|слово|слово|слово|слово, 9|слово|слово|слово|слово|слово|слово]


BUILD SUCCESSFUL (total time: 0 seconds)

[/quote]
...
Рейтинг: 0 / 0
30.03.2015, 15:37
    #38921332
Atum1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
Код: java
1.
2.
3.
4.
5.
6.
 String dx1 = s1.split("\\|")[0];
 String dx2 = s2.split("\\|")[0];


 String dx1 = s1.split(Pattern.quote("|"))[0];
 String dx2 = s2.split(Pattern.quote("|"))[0];
...
Рейтинг: 0 / 0
30.03.2015, 15:40
    #38921339
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
...
Рейтинг: 0 / 0
31.03.2015, 10:06
    #38921955
Atum1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
BlazkowiczAtum1,
http://commons.apache.org/proper/commons-lang/javadocs/api-3.1/org/apache/commons/lang3/StringUtils.html#substringBefore(java.lang.String, java.lang.String)

лучше тогда без использования либ в чистом функциональном стиле :)
...
Рейтинг: 0 / 0
31.03.2015, 10:20
    #38921984
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
Atum1лучше тогда без использования либ в чистом функциональном стиле :)
Использование либ к функциональному стилю отношения не имеет.
...
Рейтинг: 0 / 0
31.03.2015, 14:08
    #38922476
VaneS Ri_lax
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
Спасибо большое за ответы, задача состояла в том что нужно было отсортировать строки по числу которое стоит в начале строки до символа |, а потом не важно что стоит.
Вариант
ArrayList myList2Sort = ...
Collections.sort(myList2Sort);
//Готово!
Мне помог.
...
Рейтинг: 0 / 0
31.03.2015, 14:18
    #38922495
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
VaneS Ri_lax,

Не задумывались что будет с нумерацией больше 9?
...
Рейтинг: 0 / 0
31.03.2015, 15:33
    #38922689
VaneS Ri_lax
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка ArrayList
BlazkowiczVaneS Ri_lax,

Не задумывались что будет с нумерацией больше 9?
Задумывался, но ее не будет, для реализации моей задачи, этого достаточно!
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Сортировка ArrayList / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]