问答详情 回答
您尚未登录,请登录
培训首页 > 软件开发培训问答 > 函数式编程中的函数是什么?

函数式编程中的函数是什么?

8浏览 2022-05-18

该校与厚学网暂未合作,平台不保证课程的真实有效性,如有侵权等争议,请及时与厚学网联系处理

  • 其他回答

  • 匿名用户
    匿名用户

     要说函数,咱们先从数学中的函数开始谈起。数学中的函数是输入元素的集合到可能的输出元素的集合之间的映射关系,而且每一个输入元素只能映射到一个输出元素。好比典型的函数f(x)=x*x把全部实数的集合映射到其平方值的集合,如f(2)=4和f(-2)=4。函数容许不一样的输入元素映射到同一个输出元素,可是每一个输入元素只能映射到一个输出元素。好比上述函数f(x)=x*x中,2和-2都映射到同一个输出元素4。这也限定了每一个输入元素所对应的输出元素是固定的。每一个输入元素都必须被映射到某个输出元素,也就是说函数能够应用到输入元素集合中的每一个元素。闭包


       用专业的术语来讲,输入元素称为函数的参数(argument)。输出元素称为函数的值(value)。输入元素的集合称为函数的定义域(domain)。输出元素和其余附加元素的集合称为函数的到达域(codomain)。存在映射关系的输入和输出元素对的集合,称为函数的图形(graph)。输出元素的集合称为像(image)。这里须要注意像和到达域的区别。到达域还可能包含除了像中元素以外的其余元素,也就是没有输入元素与之对应的元素。并发


       下图表示了一个函数对应的映射关系(图片来源于维基百科上的 Function条目)。输入集合X中的每一个元素都映射到了输出集合Y中某个元素,即f(1)=D、f(2)=C和f(3)=C。X中的元素2和3都映射到了Y中的C,这是合法的。Y中的元素B和A没有被映射到,这也是合法的。该函数的定义域是X,到达域是Y,图形是(1,D)、(2,C)和(3,C)的集合,像是C和D的集合。app

       咱们一般能够把函数当作是一个黑盒子,对其内部的实现一无所知。只须要清楚其映射关系,就能够正确的使用它。函数的图形是描述函数的一种方式,也就是列出来函数对应的映射中全部可能的元素对。这种描述方式用到了集合相关的理论,对于图1中这样的简单函数比较容易进行描述。对于包含输入变量的函数,如f(x)=x+1,须要用到更加复杂的集合逻辑。由于输入元素x能够是任何数,定义域是一个无穷集合,对应的输出元素集合也是无穷的。要描述这样的函数,用咱们下面介绍的λ演算会更加直观。


    2022-05-17 15:54:38