Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Помогите пожалуйста с задачкой JAVA / 8 сообщений из 8, страница 1 из 1
28.08.2014, 13:31
    #38731554
quagliarella06
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с задачкой JAVA
Доброе времени суток!

Задачка заключается в том, чтобы создать несколько типов сортировок (по алфавиту, в обратно порядке и без сортировки) автомобилей по выбранному параметру.
Я реализовал сортировку лишь по алфавиту, но не знаю как в функционале comparable также реализовать остальные типы сортировки, плюс к тому, не понимаю, каким образом можно передать параметр выбора типа сортировки.
Подскажите пожалуйста, каким образом можно все сделать, буду очень благодарен.

Вот мой код:


Код: 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.
public class CarsSet implements Comparable {
    String mark;

    public CarsSet(String mark) {
        this.mark = mark;

    }
    @Override
    public int compareTo(Object obj) {
        CarsSet entry = (CarsSet) obj;
        int result = mark.compareTo(entry.mark);

        if (result != 0) {
            return result;
        }
        return 0;
    }





}



public class Cars {
    public static void main(String [] args) {

        TreeSet<CarsSet> cs = new TreeSet<CarsSet>();
        cs.add(new CarsSet("BMW"));
        cs.add(new CarsSet("Audi"));
        cs.add(new CarsSet("Subaru"));
//        String sortType = args[0];

        for(CarsSet c: cs) {

            System.out.println("Mark:" + c.mark);
        }

    }

}
...
Рейтинг: 0 / 0
28.08.2014, 13:35
    #38731557
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с задачкой JAVA
quagliarella06Я реализовал сортировку лишь по алфавиту, но не знаю как в функционале comparable также реализовать остальные типы сортировки,

Что такое Comparator.
http://docs.oracle.com/javase/tutorial/collections/interfaces/order.html

quagliarella06плюс к тому, не понимаю, каким образом можно передать параметр выбора типа сортировки.

http://docs.oracle.com/javase/tutorial/java/javaOO/enum.html
...
Рейтинг: 0 / 0
28.08.2014, 13:37
    #38731558
quagliarella06
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с задачкой JAVA
авторBlazkowicz
Что такое Comparator.
http://docs.oracle.com/javase/tutorial/collections/interfaces/order.html
Я делал через компоратор, но мне нужно именно через comparable.
...
Рейтинг: 0 / 0
28.08.2014, 13:38
    #38731563
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с задачкой JAVA
quagliarella06Я делал через компоратор, но мне нужно именно через comparable.
Ладно. Удачи.
...
Рейтинг: 0 / 0
28.08.2014, 13:39
    #38731565
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с задачкой JAVA
quagliarella06, у тебя сущность называется CarsSet (множество машинок). Хотя по смыслу - это одна машинка.
Что-же ты будешь писать когда тебе надо будет создать коллекцию типа Set? Получим "множество множеств" ?

Это знаешь-ли не оффтопик а просто пожелание писать изначально названия классов правильно и не путать
форумчан софизмами.
...
Рейтинг: 0 / 0
29.08.2014, 13:53
    #38732736
Psolao
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с задачкой JAVA
1. Заведи переменную класса sortType -в ней указывай тип сортировки. (извращение конечно)
2.
Код: java
1.
2.
3.
4.
   int result = mark.compareTo(entry.mark);
   if (sortType='A') return result;
   else if (sortType='D') return 1-result;
   else return 1; // без сортировки



для типа сортировки -заведи enum лучше. срфк -я так для примера поставил.

А вообще лучше компаратор использовать если нужны разные типы сортировки.
...
Рейтинг: 0 / 0
29.08.2014, 14:48
    #38732792
mad_nazgul
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с задачкой JAVA
quagliarella06авторBlazkowicz
Что такое Comparator.
http://docs.oracle.com/javase/tutorial/collections/interfaces/order.html
Я делал через компоратор, но мне нужно именно через comparable.

Странное требование...

Можно создать интерфейс, а для него имплементации для разных типов сортировок.

Ну или создать абстрактный класс, где может переопределяться функция сортировки.

Где-то так....
Хотя все равно требование странное.
...
Рейтинг: 0 / 0
29.08.2014, 15:20
    #38732843
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите пожалуйста с задачкой JAVA
mad_nazgulГде-то так....
Хотя все равно требование странное.

Препод хочет взятку IMHO
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Помогите пожалуйста с задачкой JAVA / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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