20 Interfejs Comparable
Napisz klasę
Student, która zawiera pola:name(typuString),averageGrade(typudouble) iyearOfBirth(typuint). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyStudentbyły sortowane malejąco według średniej ocen. Stwórz listę tablicową 5 obiektów klasyStudenti posortuj ją według sprecyzowanego kryterium.Napisz klasę
Employee, która zawiera pola:name(typuString),salary(typudouble) iemploymentDate(typuLocalDate). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyEmployeebyły sortowane rosnąco według pensji. Stwórz listę tablicową 5 obiektów klasyEmployeei posortuj ją według sprecyzowanego kryterium.Napisz klasę
Client, która zawiera pola:name(typuString),clientNumber(typuint) ilastLogin(typuDate). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyClientbyły sortowane malejąco według daty ostatniego logowania. Stwórz listę tablicową 5 obiektów klasyClienti posortuj ją według sprecyzowanego kryterium.Napisz klasę
Product, która zawiera pola:name(typuString),price(typudouble) iproductionDate(typuLocalDate). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyProductbyły sortowane rosnąco według daty produkcji. Stwórz listę tablicową 5 obiektów klasyProducti posortuj ją według sprecyzowanego kryterium.Napisz klasę
Person, która zawiera pola:name(typuString),height(typuint) idateOfBirth(typuLocalDate). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyPersonbyły sortowane malejąco według wzrostu. Stwórz listę tablicową 5 obiektów klasyPersoni posortuj ją według sprecyzowanego kryterium.Napisz klasę
Book, która zawiera pola:title(typuString),numberOfPages(typuint) ipublicationDate(typuLocalDate). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyBookbyły sortowane malejąco według liczby stron. Stwórz tablicę 4 obiektów klasyBooki posortuj ją według sprecyzowanego kryterium.Napisz klasę
Car, która zawiera pola:brand(typuString),mileage(typuint) iyearOfProduction(typuint). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyCarbyły sortowane rosnąco według przebiegu. Stwórz tablicę 4 obiektów klasyCari posortuj ją według sprecyzowanego kryterium.Napisz klasę
FoodProduct, która zawiera pola:name(typuString),price(typudouble) iexpirationDate(typuLocalDate). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyFoodProductbyły sortowane rosnąco według daty ważności. Stwórz tablicę 4 obiektów klasyFoodProducti posortuj ją według sprecyzowanego kryterium.Napisz klasę
Music, która zawiera pola:title(typuString),artist(typuString) ireleaseYear(typuint). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyMusicbyły sortowane malejąco według roku wydania. Stwórz tablicę 4 obiektów klasyMusici posortuj ją według sprecyzowanego kryterium.Napisz klasę
Item, która zawiera pola:name(typuString),weight(typudouble) iprice(typudouble). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyItembyły sortowane rosnąco według wagi. Stwórz tablicę 4 obiektów klasyItemi posortuj ją według sprecyzowanego kryterium.Napisz klasę
Student, która zawiera pola:name(typuString),averageGrade(typudouble) iyearOfStudy(typuint). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyStudentbyły sortowane według jednego kryterium: malejąco według średniej ocen, a przy równości sortowane były rosnąco według roku studiów. Stwórz tablicę 4 obiektów klasyStudenti posortuj ją według sprecyzowanego kryterium.Napisz klasę
Order, która zawiera pola:productName(typuString),quantity(typuint) iunitPrice(typudouble). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyOrderbyły sortowane według jednego kryterium: malejąco według ceny jednostkowej, a przy równości sortowane były rosnąco według ilości. Stwórz listę tablicową 4 obiektów klasyOrderi posortuj ją według sprecyzowanego kryterium.Napisz klasę
Client, która zawiera pola:name(typuString),balance(typudouble) ilastPurchaseDate(typuLocalDate). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyClientbyły sortowane według jednego kryterium: malejąco według salda, a przy równości sortowane były rosnąco według daty ostatnich zakupów. Stwórz listę tablicową 4 obiektów klasyClienti posortuj ją według sprecyzowanego kryterium.Napisz klasę
Course, która zawiera pola:name(typuString),numberOfHours(typuint) iprice(typudouble). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyCoursebyły sortowane według jednego kryterium: rosnąco według liczby godzin, a przy równości sortowane były malejąco według ceny. Stwórz tablicę 4 obiektów klasyCoursei posortuj ją według sprecyzowanego kryterium.Napisz klasę
Product, która zawiera pola:name(typuString),price(typudouble) iexpirationDate(typuLocalDate). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyProductbyły sortowane według jednego kryterium: malejąco według daty ważności, a przy równości sortowane były rosnąco według ceny. Stwórz listę obiektów klasyProducti posortuj ją według sprecyzowanego kryterium. Następnie wyświetl posortowaną listę na ekranie.Napisz klasę
Car, która zawiera pola:brand(typuString),model(typuString) iregistrationNumber(typuString). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyCarbyły sortowane według jednego kryterium: rosnąco według długości numeru rejestracyjnego. Stwórz tablicę 4 obiektów klasyCari posortuj ją według sprecyzowanego kryterium.Napisz klasę
Employee, która zawiera pola:firstName(typuString),lastName(typuString) iposition(typuString). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyEmployeebyły sortowane według jednego kryterium: rosnąco według długości nazwiska. Stwórz listę tablicową 4 obiektów klasyEmployeei posortuj ją według sprecyzowanego kryterium.Napisz klasę
Movie, która zawiera pola:title(typuString),director(typuString) igenre(typuString). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyMoviebyły sortowane według jednego kryterium: rosnąco według długości tytułu. Stwórz listę tablicową 4 obiektów klasyMoviei posortuj ją według sprecyzowanego kryterium.Napisz klasę
Book, która zawiera pola:title(typuString),author(typuString) ipublishDate(typuLocalDate). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyBookbyły sortowane według jednego niestandardowego kryterium: rosnąco według roku wydania. Stwórz tablicę 4 obiektów klasyBooki posortuj ją według sprecyzowanego kryterium.Napisz klasę
Product, która zawiera pola:name(typuString),price(typudouble) iproductionDate(typuLocalDate). Zaimplementuj interfejsComparablew taki sposób, aby obiekty klasyProductbyły sortowane według jednego niestandardowego kryterium: malejąco według roku produkcji. Stwórz listę tablicową 4 obiektów klasyProducti posortuj ją według sprecyzowanego kryterium.Zdefiniuj klasę
Client, która będzie implementować generyczny interfejsComparable. W klasie tej zadeklaruj prywatne polalastNametypuStringorazbalancetypudouble. Implementując metodęcompareTointerfejsuComparable, porównuj klientów na podstawie ich salda, a w przypadku takiego samego salda - na podstawie nazwiska. Następnie zdefiniuj klasęCompanydziedziczącą po klasieClient. KlasaCompanyma dodatkowo posiadać prywatne polenumberOfEmployeestypuint. Implementując metodęcompareTointerfejsuComparablew klasieCompany, skorzystaj z metodycompareTozdefiniowanej w klasieClientoraz, w razie potrzeby, uwzględnij polenumberOfEmployees. Napisz programTestClient, w którym utwórz listę tablicową 5 klientów i firm o nazwieclientListposługując się klasąArrayList. W składzie listy powinny wystąpić przynajmniej dwóch klientów o takim samym saldzie i różnym nazwisku oraz dwie firmy o takiej samej liczbie pracowników i różnym saldzie. Wyświetl zawartość listyclientList, posortuj ją za pomocą instancyjnej metodysortz klasyArrayListi ponownie wyświetl zawartość tej listy.Zdefiniuj klasę
Animal, która będzie implementować generyczny interfejsComparable. W klasie tej zadeklaruj prywatne polaspeciestypuStringorazagetypuint. Implementując metodęcompareTointerfejsuComparable, porównuj zwierzęta na podstawie ich wieku, a w przypadku takiego samego wieku - na podstawie gatunku. Następnie zdefiniuj klasęDogdziedziczącą po klasieAnimal. KlasaDogma dodatkowo posiadać prywatne polebreedtypuString. Implementując metodęcompareTointerfejsuComparablew klasieDog, skorzystaj z metodycompareTozdefiniowanej w klasieAnimaloraz, w razie potrzeby, uwzględnij polebreed. Napisz programTestAnimal, w którym utwórz listę tablicową 5 zwierząt i psów o nazwieanimalListposługując się klasąArrayList. W składzie listy powinny wystąpić przynajmniej po 3 obiekty różnych typów.