Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/47: Рейтинг темы: голосов - 47, средняя оценка - 4.64
7 / 7 / 1
Регистрация: 27.09.2014
Сообщений: 43
1

Сортировка объектов по полю String

08.11.2014, 18:10. Показов 9047. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем доброго времени суток!

Подскажите кто нибудь как реализовать сортировку объектов по полю String name.

Само задание

Создать класс Worker.
Класс реализовывает интерфейсы Serializable, Comparable

Поля класса: (закрытые переменные)
- NAME – фамилия и имя работника;
- POS – название занимаемой должности;
- YEAR – год поступления на работу.

Методы:
- конструктор с параметрами.
- переопределить метод toString();
В методе toString() - для формирования строки использовать String.format()

- для всех полей сделать гетерры ( getParam()) .
- переопределить метод equals();
- реализовать метод public int compareTo(Object t) по полю NAME интерфейса Comparable



Создать класс WorkerList.
Поля класса:
- ссылка на объект класса ArrayList;

Методы:
- конструктор без параметров. Конструктор создает объект класса ArrayList.

- заносит данные в объект ArrayList (ArrayList используется как динамический массив).
Элемент массива – объект класса Worker, не допускать добавления повторяющегося элемента массива. Для обхода списка использовать итератор.
Для сравнения объектов использовать переопределенный метод equals класса Worker.

- печатает содержимое динамического массива.
Использовать итератор для показа содержимого объекта класса ArrayList.

- удаляет элемент массива по полю NAME. ( getName(); )
Для обхода списка использовать итератор.


CompareTo я уже написал. Но как отсортировать теперь, я ума не приложу.
Так то готово уже все, кроме сортировки.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.11.2014, 18:10
Ответы с готовыми решениями:

Сравнить две коллекции объектов по одному одинаковому полю
Народ, доброе утро всем! У меня есть две коллекции List. AArrayList<MyRequest>...

Сортировка вектора объектов по полю
Всем доброго времени суток. Знаю, что вопрос часто задаваемый, но я не нашел для себя ответа. В...

Сортировка объектов в List по полю типа DateTime
У меня есть лист, в котором есть некоторые объекты класса Birthday, у которых есть поле Date типа...

Сортировка в AdoQuery по полю String как Int
есть прога на C++ Builder, собсно трабла у меня в сортировке в AdoTable и AdoQuery юзаю...

12
Кандёхаем веселее!
296 / 328 / 76
Регистрация: 02.10.2012
Сообщений: 2,175
08.11.2014, 18:53 2
Collections.sort
1
69 / 69 / 39
Регистрация: 22.05.2014
Сообщений: 311
08.11.2014, 19:03 3
и в метод передать вашу колекцию(лист) и компаратор(который сравнивает по имени)
0
7 / 7 / 1
Регистрация: 27.09.2014
Сообщений: 43
08.11.2014, 19:11  [ТС] 4
Но ведь CompareTo написан в классе Worker, а коллекция создается в классе WorkerList. Как я при сортировке передам туда компаратор?
1
69 / 69 / 39
Регистрация: 22.05.2014
Сообщений: 311
08.11.2014, 19:13 5
MRabaev, а господи, я торможу. Просто передать в тот метод лист, компаратора не надо, ведь уже есть compareTo() по имени
1
7 / 7 / 1
Регистрация: 27.09.2014
Сообщений: 43
08.11.2014, 20:33  [ТС] 6
Спасибо)
0
7 / 7 / 1
Регистрация: 27.09.2014
Сообщений: 43
09.11.2014, 23:12  [ТС] 7
Все равно не получается. Можешь код глянуть?
0
69 / 69 / 39
Регистрация: 22.05.2014
Сообщений: 311
10.11.2014, 01:34 8
MRabaev, конечно, кидай

Добавлено через 20 секунд
Цитата Сообщение от MRabaev Посмотреть сообщение
Можешь код глянуть?
прикрепил бы код уже сразу
0
7 / 7 / 1
Регистрация: 27.09.2014
Сообщений: 43
11.11.2014, 12:01  [ТС] 9
https://gist.github.com/mrabae... f6f5b7006d
0
69 / 69 / 39
Регистрация: 22.05.2014
Сообщений: 311
11.11.2014, 13:17 10
Java
1
2
3
4
5
6
7
public class Worker implements Comparable<Worker>, Serializable {
 
 
 @Override
    public int compareTo(Worker o) {
        return this.name.compareTo(o.name);
    }
0
7 / 7 / 1
Регистрация: 27.09.2014
Сообщений: 43
11.11.2014, 13:43  [ТС] 11
так оно у меня есть.
0
69 / 69 / 39
Регистрация: 22.05.2014
Сообщений: 311
12.11.2014, 16:35 12
Цитата Сообщение от EdisonMiranda Посмотреть сообщение
public class Worker implements Comparable<Worker>, Serializable
Цитата Сообщение от EdisonMiranda Посмотреть сообщение
implements Comparable<Worker>
Цитата Сообщение от EdisonMiranda Посмотреть сообщение
<Worker>

и вместо
Java
1
2
3
public class WorkerList implements Serializable {
 
    ArrayList list;
ArrayList<Worker> list
1
7 / 7 / 1
Регистрация: 27.09.2014
Сообщений: 43
13.11.2014, 00:22  [ТС] 13
Спасибо большое!
Уже разобрался))
0
13.11.2014, 00:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.11.2014, 00:22
Помогаю со студенческими работами здесь

Сортировка массива классов по полю типа string
Дан массив объектов класса, одним из полей которого является переменная name типа string. Как...

Сортировка элементов класса в списке по полю типа string
Ребята, прошу помощи. 3й день не могу реализовать. Есть список выражений, по числам и по алфавиту...

Сортировка структуры по полю Tag и по полю Eng
Есть структура: struct _1C { string Tag; string Rus; string Eng; _1C(const string &amp;Tag,...

Сортировка вектора по полю(Сортировка вставками)
Здравствуйте! Нужно написать сортировку вектора по полю weight класса tomato. Вот класс: #pragma...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru