Я пытаюсь передумать, чтобы подумать об этом, и недавно столкнулся с ситуацией, в которой мне нужно было отобрать элементы из списка до тех пор, пока не будет выполнено условие, и я не мог найти простой естественный способ достижения этого. Очевидно, я все еще учусь.
Скажем, у меня есть этот список:
List<String> tokens = Arrays.asList("pick me", "Pick me", "pick Me",
"PICK ME", "pick me and STOP", "pick me", "pick me and Stop", "pick me");
// In a non lambdas was you would do it like below
List<String> myTokens = new ArrayList<>();
for (String token : tokens) {
myTokens.add(token);
if (token.toUpperCase().endsWith("STOP")) {
break;
}
}
Заранее благодарю за ваши входы
Примечание: Прежде чем опубликовать это, я прочитал Ограничить поток предикатом, но я не мог понять, как я могу адаптировать этот ответ к моей проблеме. Любая помощь была бы оценена благодарностью.