Rust中是否有一个等效于Java的Stream.Iterate的函数?

美格

Rust标准库是否具有像Java 8 Streams所提供的那样在给定种子和lambda的情况下生成无限迭代器的函数?如果没有,Rust中有什么类似的替代方法?

Stream.iterate(1, x -> 2 * x);
Shepmaster

锈病标准库使用有名下类似的功能unfold,但它从来没有稳定,并最终移除。现在它位于itertools板条箱中

extern crate itertools;

use itertools::Unfold;

fn main() {
    let x = Unfold::new(1, |x| {
        *x *= 2;
        Some(*x)
    });

    for val in x.take(10) {
        println!("{}", val);
    }
}

注意,这有点复杂,因为状态不必与迭代器返回的内容完全匹配,并且您可以控制迭代器何时停止板条箱可能会接受顶部薄层的PR,从而提供确切的实施方案。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在shell脚本中是否有一个等效于var_dump(PHP)的函数

是否有Rust等效于C ++中的clock函数?

在Python中,是否有C ++等效于声明一个函数并在使用后对其进行定义?

是否有一个PHP函数等效于JavaScript函数toLocaleString()

是否有一个R等效于Excel的LOGEST函数?

在Python中是否有等效于R apply函数的函数?

Python等效于MATLAB的lsqr(),带有第一个参数的函数

建立一个等效于memcpy的函数

在DB2 SQL函数中,是否有等效于JAVA和.Net中的Final模块?

在Julia中是否有等效于matlab的rcond()函数?

C#中是否有等效于SQL NULLIF的函数?

是否有R函数等效于Python中的range?

是否等效于Oracle中的cbind()函数?

是否有与Java 8 Stream limit函数等效的Kotlin函数

Linq等效于一个数据库行程中多个表上的聚合函数

Unix中是否有一个等效于文件命令的Java库

C ++中是否有任何等效于python中字典的get函数的函数?

Rust中是否有一个有效的函数可以找到排序向量中值首次出现的索引?

Dart 中是否有等效于 Javascript 的 `resolve` 函数(来自 Promise 构造函数)?

java中是否有一个函数来检查任何json属性是否为空?

是否有一个完整的等效项来查看成员函数/变量?

是否有标准的Haskell函数(如iterate)会停止运行?

在python / scipy,numpy,sympy中是否有等效于Mathematicas RootApproximant函数?

R ggplot2 是否有等效于 Performance Analytics 包中的 chart.Correlation 函数?

是否有一个Unix函数的Java库?

是否有一个函数可以计算Java中每个循环的迭代次数?

Matlab中是否有一个名为`taskset()`的函数

是否有一个等效于python virtualenv的GO?

是否有一个等效于def的Clojure宏?