fork download
  1. import java.util.*;
  2. import java.util.stream.*;
  3.  
  4. class Main {
  5.  
  6. public static void main(String[] args) {
  7. List<Integer> list1 = Arrays.asList(3, 8, 15, 98);
  8. List<Integer> list4 = Arrays.asList(5, 4, 76, 90);
  9. List<Integer> list2 = Arrays.asList(3, 4, 21, 98, 5, 22);
  10. List<Integer> list3 = Arrays.asList(3, 4, 21, 98, 5);
  11.  
  12.  
  13. Optional<List<Integer>> list = Stream.of(list1, list2, list3, list4)
  14. .sorted((a, b) -> IntStream.range(0, Math.min(a.size(), b.size()))
  15. .map(i -> Integer.compare(a.get(i), b.get(i)))
  16. .filter(i -> i != 0)
  17. .findFirst()
  18. .orElse(Integer.compare(a.size(), b.size())))
  19. .findFirst();
  20.  
  21. System.out.println(list);
  22. }
  23.  
  24. }
Success #stdin #stdout 0.09s 35140KB
stdin
Standard input is empty
stdout
Optional[[3, 4, 21, 98, 5]]