Насколько я понимаю ваш вопрос, я предполагаю, что list
имеет следующую структуру:
List<Map<String, Object>> listOfMap = new ArrayList<>();
И любое число этих Map
s в list
может иметь ключ "position"
, который вы хотите использовать для извлечения значения. Использование:
List<String> positions = listOfMap.stream() // Stream
.map(map -> map.get("position")) // Get from map a value by key
.collect(Collectors.toList()); // Collect to List
Я хотел бы добавить, что Stream-API определенно не является заменой for-loops
, как вы указали во фрагменте. Как гласит документация , он должен быть без логического вывода и без сохранения состояния . Таким образом, замена for-loop
добавления элемента в другом месте с использованием Stream не является хорошей идеей - вам нужно найти другой путь.