首页 > 代码库 > 7.1 函数式数据结构

7.1 函数式数据结构


7.1 函数式数据结构

 

用函数编程,程序处理的数据总是保存在数据结构中。数据结构和对象之间的区别在于,数据结构公开了表示数据(从名字就可以知道) 的结构;知道了数据的结构便于写处理的代码,但要到第九章才讨论,F# 还提供了一种封装结构的方法,如同面向对象编程,当我们想从库中导出 F# 数据结构,或者用于 C#。正如我们在第二章讨论函数概念时所说的,这些数据结构是不可变的。

在这一章,我们将讨论两个最常见的程序数据表示形式:

■  组合值列表,比如元组或差别联合

■ 更一般的递归数据结构,比如树

在第四章,我们使用元组列表来绘制饼图,其中每个元组包含有标题和值。使用元组很简单,但想表达更复杂的数据,则是不切实际的。在这一节,我们将学习 F# 的记录(record)类型,这是尚未讨论的 F# 核心数据类型。

7.1 函数式数据结构