Если вы пытаетесь заменить все «недействительные» входные данные заданным значением, например, -1, вы можете предоставить другую функцию отображения.
Flowable<Integer> integerFlowable = Flowable.fromIterable(foos)
.map(s -> {
try {
return Integer.parseInt(s);
} catch (NumberFormatException e) {
return -1;
}
});
Вы также можете удалить все «недействительные» данные перед созданием Flowable.
Collection<String> foos = Arrays.asList("1", "2", "3", "X", "5", "6", "7", "8", "9", "10");
Collection<String> numbers = foos.stream().filter(s -> {
try {
Integer.parseInt(s);
return true;
} catch (NumberFormatException e) {
return false;
}
}).collect(Collectors.toList());