对于Java 8中的每个循环:在Java 8中编写以下代码的最佳方法是什么

0 java filtering

在for循环和过滤方面,在Java 8中编写以下代码的最佳方法是什么?

boolean flag = true;
List<Feed> availableFeeds = data.getAvailableFeeds();
for (Feed feedElement : availableFeeds) {
    String type = feedElement.getType();
    if ("MatchState".equals(type)) {
        flag = false;
        break;
    }
}
Run Code Online (Sandbox Code Playgroud)

use*_*er7 7

boolean flag = data.getAvailableFeeds()
                   .stream()
                   .map(Feed::getType)
                   .noneMatch("MatchState"::equals)
Run Code Online (Sandbox Code Playgroud)

第一行创建列表中的流.第二个Feed通过调用将每个映射到类型getType.如果没有类型等于字符串"MatchState",则最后一个返回true .