第三章 F# 和 C# 中元组、列表和函数

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

第三章 F# 和 C# 中元组、列表和函数

 

本章介绍

■声明函数和值

■使用不可变元组和列表

■用递归处理列表

■函数化处理函数

 

在第二章,我们从宏观上探讨了函数编程中最重要的概念,除了一些用来说明概念的简单示例之外,没有展示任何实际的函数式代码。到目前为止,我们的目标还是为了说明概念之间的关系,以及对编程来说结果完全不同。

在这一章,我们终于开始写函数式的 F# 代码了,但重点关注是能用 C# 很好地解释和说明的示例,深入研究要等到第二部分。

这里简单介绍一下本章的主题:

■值绑定(Value bindings):F# 的这个功能统一了函数与值的声明;我们还会看到在 C# 中不多见的结构,如嵌套函数声明。

■不可变性(Immutability):这是一项普遍原则,即,值一旦初始化后就不能更改;我们将用最简单的函数式数据类型:元组(tuple)来演示。

■列表(Lists):一个很普通,但非常有用的函数式数据类型;像元组一样,它也是不可变的,但还有一个重要特征,它还是递归的(recursive);而最重要的是,我们将学习用递归计算来处理列表。

■模式匹配(Pattern matching):这个功能用于检查数据类型的结构和内容;我们在讨论元组和列表时会介绍。

■函数也是值(Functions as values):把函数值当作其他函数的参数值使用,能够隐藏计算的复杂性;我们将用 F# 和 C# 来实现。

可以看到,我们要学习的功能相当多!通过第二章的介绍,我们对大部分功能已经有了一个很好的概念,因此,通过实践加深理解,对你来说应该不成问题;我们还会用 C# 示例演示F# 代码的运行,这比写大段的文章会更有用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值