12.3 处理序列

728 篇文章 1 订阅
349 篇文章 0 订阅

12.3 处理序列

 

处理序列,可供选择的范围很广泛,包括从低级技术,能控制一切,但难以表达更复杂而通常的处理模式,到更高级技术,虽然不能表达我们所有可能想要的,但会更优雅。

在 C# 中,最低级的(除了直接实现 IEnumerable<T> 接口)是使用迭代器块(iterator blocks),读取输入的序列,既可以使用 foreach,也可以使用枚举对象;而更高级的,我们可以使用预定义的(或者我们自己的)高阶方法,比如 Where 和 Select,如果只处理涉及某些特定的操作,可以使用 C# 3.0 的查询语法。

F# 中处理序列的最常见方法,与其他集合类型类似。我们已经看到,列表可以用函数,比如,List.filter 和 List.map 来处理;在 Array 模块中,也有类似处理数组的函数;在 Seq 模块中,同样有处理序列的函数集,一点也不奇怪。F# 语言,不显式支持任何查询语法,但我们会看到,序列表达式的某些观点,与低级的迭代器和高级查询背后的思想,有一致性。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值