Взять из всех строк символ до точки и занести в лист
List<String> list = new ArrayList<>();
list.add("1. Текст1");
list.add("2. Текст2. продолжение текста");
list.add("3. Текст3. еще текст. и еще текст");
Нужно создать отдельный список List<Long> id, в котором будут номера по порядку с каждой строчки.
Можно ли сделать это через stream API? Вроде:
List<Long> id = list.stream.map(i -> i.split("\\.")
...вот дальше не пойму как...
Ответы (1 шт):
Автор решения: gil9red
→ Ссылка
Можно.
Попробуйте:
List<String> list = new ArrayList<>();
list.add("1. Текст1");
list.add("2. Текст2. продолжение текста");
list.add("3. Текст3. еще текст. и еще текст");
List<Long> ids = list
.stream()
.map(i -> Long.valueOf(i.split("\\.")[0]))
.collect(Collectors.toList());
System.out.println(ids);
// [1, 2, 3]