java - 使用 Java 8 Stream API 时如何移至循环中的下一个值

标签 java loops java-8 iteration java-stream

当在 Java Collectios 上使用外部迭代时,我们使用关键字“Continue”移动到循环中的下一个值。在这种情况下,当我们使用 java Stream API 时呢?示例:

List<User> users;

for(Item item : item){
    users.stream()
        .filter(user -> user.getName().equals("Tom"))
        .findFirst()
        .ifPresent(move to the next value in a outer loop(items) ???? like **continue**;);

    more code here...
}

没有流:

 for(Item item : item){
    for(User user : users){
     if(user.getName("Tom") exist = true;
    }
  if (exist) continue;

    more code here...
}

最佳答案

Java 流 api 仅用于处理特定的元素流。你永远不能将它用于像“break”或“continue”这样的控制语句来控制外部循环(就像这里你想控制“Item”循环)。

关于java - 使用 Java 8 Stream API 时如何移至循环中的下一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50701412/

相关文章:

java.time.format.DateTimeParseException : Text '10-03-2021' could not be parsed at index 0

javascript - 获取字符串中重复子串的列表

c - 循环内的 strcat() 与 sprintf()

java - 等待多个并行线程之一完成

java - Spring MVC Rest - URL 中的多个参数

java - Java 初学者(循环)- 缺少 return 语句

Java 8 - 重试方法直到满足条件(间隔)

java - CompletableFuture 异常处理程序链

java - 检索和设置 IntelliJ IDEA 插件开发的拆分窗口设置

java - 构建 Alfresco 时出现错误 "class file has wrong version 55.0, should be 52.0"