📅 最后修改于: 2020-11-04 06:58:41 🧑 作者: Mango
到目前为止,我们已经讨论了许多类型的Haskell函数,并使用了不同的方式来调用这些函数。在本章中,我们将学习一些可以在Haskell中轻松使用的基本功能,而无需导入任何特殊的Type类。这些功能大多数都是其他高阶功能的一部分。
Head函数适用于列表。它返回输入参数的第一个,它基本上是一个列表。在以下示例中,我们传递了一个包含10个值的列表,并使用head函数生成了该列表的第一个元素。
它将产生以下输出-
尾部是补充了头函数的函数。它以列表作为输入,并产生不带头部的整个列表。这意味着tail函数将返回没有第一个元素的整个列表。看下面的例子-
它将产生以下输出-
顾名思义,它产生了列表的最后一个元素作为输入。检查以下示例。
它将产生以下输出-
Init的工作原理与尾函数相反。它使用一个列表作为参数,并返回整个列表而不包含最后一个条目。
现在,观察其输出-
Null是布尔检查函数,它对String起作用,并且仅在给定列表为空时返回True ,否则返回False 。以下代码检查提供的列表是否为空。
它将产生以下输出-
它对字符串输入起作用,并将整个输入转换为相反的顺序,并给出一个输出。以下是此函数的代码库。
它将产生以下输出-
此函数用于计算作为参数给出的列表的长度。看下面的例子-
我们的列表中有10个元素,因此我们的代码将产生10个输出。
Take函数用于从另一个String创建一个子字符串。以下代码显示了如何在Haskell中使用take函数-
该代码从提供的列表中生成包含5个元素的子字符串-
此函数还用于生成子字符串。它与Take函数相反。看下面的代码-
该代码从提供的列表中删除前5个元素,并打印其余5个元素。它将产生以下输出-
此函数用于从提供的列表中查找具有最大值的元素。让我们看看如何在实践中使用它-
上面的代码将生成以下输出-
此函数用于从提供的列表中查找最小值的元素。它只是max函数的反义词。
上面的代码的输出是-
顾名思义,此函数返回提供的列表中存在的所有元素的总和。以下代码采用5个元素的列表,并将其总和作为输出返回。
它将产生以下输出-
您可以使用此函数将列表中的所有元素相乘并打印其值。
我们的代码将产生以下输出-
此函数用于检查提供的列表是否包含特定元素。因此,它返回true或false 。
以下代码检查所提供的元素列表是否包含值786。
它将产生以下输出-
使用相同的代码检查提供的列表中是否包含值1785。