gpt4 book ai didi

loops - 如何在满足特定条件时打破 erlang 中的循环流控制?

转载 作者:行者123 更新时间:2023-12-03 14:43:39 25 4
gpt4 key购买 nike

我想在 erlang 编程语言中搜索一个列表。
在 erlang 中,由于我们没有循环构造,我们使用递归方法来进行循环。
但是,我想知道我们如何打破这个循环?
比如说,一旦我们在列表中找到所需的元素。
就像我们使用 break在 C 语言中。

最佳答案

Elem = 3
List = [1,2,3,4,5,6]

elem_in_list(_Elem, []) -> false;
elem_in_list(Elem, [Elem | _Rest]) -> true;
elem_in_list(Elem, [_Head | Rest]) -> elem_in_list(Elem, Rest).

在上面的代码中,我们正在寻找 3在给定的 List .如果我们将其展开,它将看起来像

elem_in_list(3, [ 1 | [2,3,4,5,6]]) % Matches [_Head | Rest]
elem_in_list(3, [ 2 | [3,4,5,6]]) % Matches [_Head | Rest]
elem_in_list(3, [ 3 | [4,5,6]]) % Matches [Elem | _Rest]
true

关于loops - 如何在满足特定条件时打破 erlang 中的循环流控制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57808860/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com