В последние пару дней я попробовал Java 8 и лямбда-выражения.Вещи понятнее, четче и интереснее в реализации, однако я был озадачен тем, как я могу перебирать многомерный массив заданного диапазона, чтобы найти первое вхождение ненулевого элемента.Например, это мой массив:
MyObject[][] array = new MyObject[][]; //this array is never full objects are placed at random places
Как следует из комментария, я пытаюсь найти первое вхождение или ненулевой объект между, скажем,
array[0-5][irrelevant]
or
array[irrelevent][3-9]
Ближайшим я получилдо сих пор это:
MyObject obj = Arrays.stream(grid.grid)
.flatMap(IntStream.range(0,2)) //here it must work for any dimension given any range
.filter(array -> array != null)
.findFirst()
.orElse(null);
Очевидно, что это не компилируется, потому что это не элемент Integer, а пользовательский объект.Любая помощь с благодарностью.