Как отсортировать ArrayList с объектом, используя stream (). Sorted ()

У меня есть реальная проблема с использованием потока и сортировки для сортировки моего ArrayList и надеюсь, что кто-то может помочь. Код использует хорватские слова, но я не думаю, что это будет проблемой для тех, кто понимает, что я имею в виду.

Это ArrayList

ArrayList<Publikacija> listaPublikacija = new ArrayList<>();

listaPublikacija.add(prvaKnjiga);
listaPublikacija.add(drugaKnjiga);
listaPublikacija.add(prviCasopis);
listaPublikacija.add(drugiCasopis);

В моем назначении я должен отсортировать эти объекты выше с помощью getCijena (), которая является двойной.

Это лучшее, что у меня есть, и оно до сих пор не сортирует, как должно ...

listaPublikacija.stream().sorted((s1, s2) -> Double.compare(s1.getCijena(), s2.getCijena()));

Любая помощь или совет приветствуются ... Я уже сделал сортировку по-разному, но необходимо отсортировать его через отсортированный метод в потоке ...

Я опубликую сценарий класса ниже для более легкого понимания вопроса выше:

public Publikacija(String nazivKnjige, int godinaIzdanja, int brojStr, VrstaPublikacije vrstaPub, double cijenaPoStr, double cijena){
this.nazivKnjige= nazivKnjige;
this.godinaIzdanja = godinaIzdanja;
this.brojStr = brojStr;
this.vrstaPub = vrstaPub;
this.cijenaPoStr = cijenaPoStr;
if(getClass().equals(Casopis.class)){this.cijena= Casopis.CIJENA_PO_PRIMJERKU;}
else this.cijena = provjeraCijene(cijena(brojStr,vrstaPub,cijenaPoStr).doubleValue());

Ответы на вопрос(0)

Ваш ответ на вопрос