Advertisement
sergAccount

Untitled

Sep 5th, 2020
1,283
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.67 KB | None | 0 0
  1. /*
  2.  * To change this license header, choose License Headers in Project Properties.
  3.  * To change this template file, choose Tools | Templates
  4.  * and open the template in the editor.
  5.  */
  6. package com.spec;
  7.  
  8. import com.spec.comparators.PersonAgeComparator;
  9. import com.spec.model.Car;
  10. import com.spec.model.Person;
  11. import java.util.ArrayList;
  12. import java.util.Collections;
  13. import java.util.List;
  14.  
  15. public class Main {
  16.  
  17.     //
  18.     public static void main(String[] args) {
  19.         // 1) Person        
  20.         Person p1 = new Person("Nick", 70);
  21.         Person p2 = new Person("Tom", 90);
  22.         //
  23.         System.out.println("p1.comapreTo(p1)=" + p1.compareTo(p1));
  24.         System.out.println("p1.comapreTo(p2)=" + p1.compareTo(p2));
  25.  
  26.         // Collections        
  27.         List<Person> list = new ArrayList<>();
  28.         list.add(p2);
  29.         list.add(p1);
  30.         //
  31.         System.out.println("До сортировки:");
  32.         for (Person p : list) {
  33.             System.out.println("p.name=" + p.getName());
  34.         }
  35.         // используем метод sort для сортировки объектов
  36.         Collections.sort(list);
  37.         //
  38.         System.out.println("После сортировки:");
  39.         for (Person p : list) {
  40.             System.out.println("p.name=" + p.getName());
  41.         }
  42.         //
  43.         List<Car> cars = new ArrayList<>();
  44.         Car c1 = new Car("red");
  45.         cars.add(c1);
  46.         // используем метод sort для сортировки объектов
  47.         Collections.sort(cars);
  48.  
  49.         // используем PersonAgeComparator для сортировки объектов списка по возрасту        
  50.         PersonAgeComparator comparator = new PersonAgeComparator();
  51.         //
  52.         List<Person> list2 = new ArrayList<>();
  53.         list2.add(p2);
  54.         list2.add(p1);
  55.         // используем метод с двумя параметрами, второй параметр comparator - механизм сравнения двух объектов
  56.         Collections.sort(list2, comparator);
  57.         for (Person p : list2) {
  58.             System.out.println("p.name=" + p.getName());
  59.             System.out.println("p.age=" + p.getAge());
  60.         }
  61.         // используем метод reverse - для того чтобы получить элементы в обратном порядке        
  62.         Collections.reverse(list2);
  63.         System.out.println("AFTER REVERSE");
  64.         for (Person p : list2) {
  65.             System.out.println("p.name=" + p.getName());
  66.             System.out.println("p.age=" + p.getAge());
  67.         }
  68.     }
  69. }
  70.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement