Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Как перегрузить метод sort для массива объектов по одному из полей объекта / 5 сообщений из 5, страница 1 из 1
19.10.2014, 21:10
    #38781265
IShapovalov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перегрузить метод sort для массива объектов по одному из полей объекта
Как перегрузить метод sort для массива объектов по одному из полей объекта?
...
Рейтинг: 0 / 0
19.10.2014, 21:26
    #38781277
no56892
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перегрузить метод sort для массива объектов по одному из полей объекта
IShapovalov,

Вы не сможете его перегрузить тк в массивах нету метода sort
...
Рейтинг: 0 / 0
19.10.2014, 21:34
    #38781282
IShapovalov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перегрузить метод sort для массива объектов по одному из полей объекта
no56892, а как можно отсортеровать массив по полю? Вот здесь например:

Код: 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.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
import java.util.Arrays;

/*
 Разработать приложение, реализующее простой каталог. Это может быть список книг, фильмов, компакт-дисков и т.п.

 При запуске программы, на экран должен выводиться список предметов, находящихся в каталоге, и их характеристики.
  Например, для книг, вывод должен быть в таком виде:

 Автор, Название, Год издания, Количество страниц.

 Или другой набор характеристик, но не менее 4-х. Реальные названия использовать необязательно.

 Для хранения объектов используйте массив. Для доступа к данным объекта - геттеры. и сеттеры.
  Для инициализации - конструкторы. Для вывода на экран: метод System.out.println();
 */
public class Catalog {

    //Обявляем переменные
    String author;
    String name;

    int year;
    int pages;

    //Создаём конструктор
    Catalog(String Author, String name, int year, int pages)
    {
        this.author = Author;
        this.name = name;
        this.year = year;
        this.pages = pages;
    }

    //Объвляем методы getter и setter
    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getYear() {
        return year;
    }

    public void setYear(int year) {
        this.year = year;
    }

    public int getPages() {
        return pages;
    }

    public void setPages(int pages) {
        this.pages = pages;
    }
    //Перегружаем метод toString
    @Override
    public String toString() {
        return getAuthor() + ", " + getName() + ", " + getYear() + ", " + getPages();
    }

    public static void main(String[] args)
    {

        //Обявлем массив
        Object [] arr = new Object[6];

        //Создаём объекты
        Catalog catalog0 = new Catalog("Кутузов5","Каркаде1", 1999, 667);
        Catalog catalog1 = new Catalog("Кутузов3","Каркаде5", 1989, 367);
        Catalog catalog2 = new Catalog("Кутузов8","Каркаде2", 1939, 267);
        Catalog catalog3 = new Catalog("Кутузов1","Каркаде7", 1989, 677);
        Catalog catalog4 = new Catalog("Кутузов2","Каркаде6", 1199, 567);
        Catalog catalog5 = new Catalog("Кутузов9","Каркаде33", 1909, 967);


        //Заполняем масив
        arr[0] = catalog0;
        arr[1] = catalog1;
        arr[2] = catalog2;
        arr[3] = catalog3;
        arr[4] = catalog4;
        arr[5] = catalog5;

        //Выводим массив
        for (int i = 0; i<arr.length; i++)
        {
            System.out.println(arr[i].toString());
        }
    }
}
...
Рейтинг: 0 / 0
19.10.2014, 22:01
    #38781298
no56892
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перегрузить метод sort для массива объектов по одному из полей объекта
IShapovalov,

Код: 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.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
import java.util.Arrays;
import java.util.Comparator;

/*
 Разработать приложение, реализующее простой каталог. Это может быть список книг, фильмов, компакт-дисков и т.п.

 При запуске программы, на экран должен выводиться список предметов, находящихся в каталоге, и их характеристики.
  Например, для книг, вывод должен быть в таком виде:

 Автор, Название, Год издания, Количество страниц.

 Или другой набор характеристик, но не менее 4-х. Реальные названия использовать необязательно.

 Для хранения объектов используйте массив. Для доступа к данным объекта - геттеры. и сеттеры.
  Для инициализации - конструкторы. Для вывода на экран: метод System.out.println();
 */
public class Catalog {

    //Обявляем переменные
    String author;
    String name;

    int year;
    int pages;

    //Создаём конструктор
    Catalog(String Author, String name, int year, int pages)
    {
        this.author = Author;
        this.name = name;
        this.year = year;
        this.pages = pages;
    }

    //Объвляем методы getter и setter
    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getYear() {
        return year;
    }

    public void setYear(int year) {
        this.year = year;
    }

    public int getPages() {
        return pages;
    }

    public void setPages(int pages) {
        this.pages = pages;
    }
    //Перегружаем метод toString
    @Override
    public String toString() {
        return getAuthor() + ", " + getName() + ", " + getYear() + ", " + getPages();
    }

    public static void main(String[] args)
    {

        //Обявлем массив
        Catalog [] arr = {
	       new Catalog("Кутузов5","Каркаде1", 1999, 667),
	       new Catalog("Кутузов3","Каркаде5", 1989, 367),
	       new Catalog("Кутузов8","Каркаде2", 1939, 267),
	       new Catalog("Кутузов1","Каркаде7", 1989, 677),
	       new Catalog("Кутузов2","Каркаде6", 1199, 567),
	       new Catalog("Кутузов9","Каркаде33", 1909, 967)};


      Arrays.sort(arr, new Comparator<Catalog>(){

		@Override
		public int compare(Catalog o1, Catalog o2) {
			// TODO Auto-generated method stub
			return o1.getAuthor().compareTo(o2.getAuthor());
		}
    	  
    	  
      });

        //Выводим массив
        for (int i = 0; i<arr.length; i++)
        {
            System.out.println(arr[i]);
        }
    }
}
...
Рейтинг: 0 / 0
19.10.2014, 23:42
    #38781331
IShapovalov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как перегрузить метод sort для массива объектов по одному из полей объекта
Благадарю)
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Как перегрузить метод sort для массива объектов по одному из полей объекта / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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