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).
Run Code Online (Sandbox Code Playgroud)
在上面的代码中,我们正在寻找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
Run Code Online (Sandbox Code Playgroud)