Вытащить из строки первые цифры и буквенные значения через Stream API
Доброго времени суток!
Region(Long id, String name)
Есть у меня
List<String> bufreg = new ArrayList<>();
bufreg(0) = "1. EU/"
bufreg(1) = "2. RU/"
bufreg(2) = "3. ASIA/"
Как мне через Stream пройтись по каждому элементу списка bufreg, и создать новый список, в котором мы возьмем порядковый номер и запишем его в id, а буквы запишем в поле name:
new Region(1, "EU");
new Region(2, "RU");
new Region(3, "ASIA");
Ответы (1 шт):
Автор решения: Sergey Gornostaev
→ Ссылка
List<Region> regions = bufreg.stream()
.map(i -> i.split("."))
.filter(a -> a.length == 2)
.map(a -> new Region(Long.valueOf(a[0]), a[1].trim()))
.collect(Collectors.toList());