2

Using Guava it is possible to ensure ascending ordering this way:

import com.google.common.collect.Ordering;
import io.predictor.dao.ohlcv.OhlcvHm;
import static java.util.stream.Collectors.toList;

assertThat("Ordered by age", Ordering.natural().isOrdered(
    employees.stream().map(Employee::getAge).collect(toList())));

It is strange for me that Guava (for all its close relation to Java lambdas) does not provide easy solution for such cases. Of course I can write some helping methods and wrap it but maybe someone has already done it in libraries. Is there an easiest method doing it? Something like:

XLibrary.isOrdered(employees, Employee::getAge);
ytterrr
  • 3,036
  • 6
  • 23
  • 32

1 Answers1

5
assertThat("Ordered by age", 
           Ordering.from(Comparator.comparing(Employee::getAge)).isOrdered(list);

or

assertThat("Ordered by age", 
           Ordering.natural().onResultOf(Employee::getAge).isOrdered(list);
JB Nizet
  • 678,734
  • 91
  • 1,224
  • 1,255