Скажем, у меня есть список
ArrayList<String> arr = new ArrayList(Arrays.asList("N1", "N2", "N3", "N5"));
Как найти "N4", я имею в виду, как я обнаружил, что недостающее целое число равно 4?
Что я пробовал до сих пор
Integer missingID = arr.stream().map(p -> Integer.parseInt(p.substring(1))).sorted()
.reduce((p1, p2) -> (p2 - p1) > 1 ? p1 + 1 : 0).get();
Это не работает, потому что reduce
не предназначен для работы так, как мне нужно в этой ситуации, на самом деле, я понятия не имею, как это сделать.
Если нет недостающего числа, чем следующий должен быть "N6" - or just 6 -
(в этом примере)
Это должно быть сделано с помощью стандартной библиотеки потоков java, без использования третьих сторон.