2013-10-24 5 views
6

Что такое кратчайший способ выразить «получить новый список B из списка A где условие» через Java 8 лямбда?Java lambda sublist

Скажем, у меня есть List<Integer> a = Arrays.asList(1, 2, 3, 4, 5) и я хочу новый список, B, где значение равно> 3.

Я прочитал новую Коллекции Streams API, но я не уверен, я нашел лучший способ сделать это, и не хочу ослабить вопрос тем, что, вероятно, является моим менее совершенным решением.

+2

http://www.javacodegeeks.com/2013/06/java-8-lambda-walkthrough.html#highlighter_349693 – alfasin

ответ

14
a.stream().filter(x -> x > 3).collect(Collectors.toList()); 
+4

Я просто люблю SO - один ответ; и прямо от одного из парней Гува! Получается ли он лучше? – Kong