У мене є Map<String,List<String>>і хочу, щоб це перетворилося, Map<String,List<Long>>тому що кожен Stringзі списку являє собою Long:
Map<String,List<String>> input = ...;
Map<String,List<Long>> output=
input.entrySet()
.stream()
.collect(toMap(Entry::getKey, e -> e.getValue().stream()
.map(Long::valueOf)
.collect(toList()))
);
Моє основне питання - це те, що кожен Stringможе не відображати правильно Long; може виникнути якесь питання. Long::valueOfможе спричинити винятки. Якщо це так, я хочу повернути нулеве або порожнєMap<String,List<Long>>
Тому що я хочу повторити цю outputкарту. Але я не можу прийняти жодне перетворення помилок; навіть жодної. Будь-яка ідея про те, як я можу повернути порожній вихід у разі неправильної рядки -> Довга конверсія?
LongStreamякщо плануєте видалити emptyрезультати)