美文网首页
Java8 Stream 无限流

Java8 Stream 无限流

作者: Yellowtail | 来源:发表于2020-09-23 20:09 被阅读0次

    背景

    今天遇到一个小需求,现在有一个列表,消费完了希望又从头开始消费,直到别的信号过来,停止这个过程
    所以需要生成一个 无限循环数字流, 对应的就是列表索引下边

    code

    import java.util.stream.IntStream;
    
    /**
     * @author YellowTail
     * @since 2020-09-23
     */
    public class InfiniteStream {
    
        public static void main(String[] args) {
    
            System.out.println("-----");
            IntStream.iterate(0, k ->  k + 1 > 9 ? 0 : k + 1)
                .limit(30)
                .forEach(k -> System.out.print(" " + k));
        }
    
    }
    

    输出

    -----
     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9
    

    注意,我这里 limit(30) 只是为了看效果,代码注释掉之后,就是无限

    参考

    create-an-infinite-stream

    相关文章

      网友评论

          本文标题:Java8 Stream 无限流

          本文链接:https://www.haomeiwen.com/subject/jfaoyktx.html