当前位置: 首页 > 编程笔记 >

Elixir使用模式匹配获取列表的总和

长孙智刚
2023-03-14
本文向大家介绍Elixir使用模式匹配获取列表的总和,包括了Elixir使用模式匹配获取列表的总和的使用技巧和注意事项,需要的朋友参考一下

示例

defmodule Math do
  # We start of by passing the sum/1 function a list of numbers.
  def sum(numbers) do
    do_sum(numbers, 0)
  end

  # Recurse over the list when it contains at least one element.
  # We break the list up into two parts:
  #   head: the first element of the list
  #   tail: a list of all elements except the head
  # Every time this function is executed it makes the list of numbers
  # one element smaller until it is empty.
  defp do_sum([head|tail], acc) do
    do_sum(tail, head + acc)
  end

 # When we have reached the end of the list, return the accumulated sum
  defp do_sum([], acc), do: acc
end
           

 类似资料:
  • 本文向大家介绍Elixir模式匹配功能,包括了Elixir模式匹配功能的使用技巧和注意事项,需要的朋友参考一下 示例            

  • 本文向大家介绍Elm列表上的模式匹配,包括了Elm列表上的模式匹配的使用技巧和注意事项,需要的朋友参考一下 示例 我们可以像其他任何数据类型一样在列表上进行匹配,尽管它们有些独特,因为用于构建列表的构造函数是infix函数::。(有关更多信息,请参见示例创建列表。) 我们可以根据需要匹配列表中的任意多个元素:            

  • 本文向大家介绍Erlang中的匹配模式总结,包括了Erlang中的匹配模式总结的使用技巧和注意事项,需要的朋友参考一下 一、赋值时匹配 原子匹配 变量匹配 元组匹配 列表匹配 参数匹配 记录匹配 比特匹配 二、流程控制中的匹配 if case try catch 消息传递匹配

  • 问题内容: 给出以下Java表达式代码: 如果是,则表示正则表达式匹配整个“行”。那我可以得到两组的内容吗?每个是? 问题答案: 要访问组,您需要使用:。 然后,您可以调用或在匹配器上执行匹配器,如果匹配器返回true,则可以通过和访问组。

  • 我已经实现了使用regex从字符串中提取一些值的逻辑,如下所示。 它按预期工作。我现在必须使用java流实现此逻辑,以使其更具可读性。我只是想让它更具可读性,更容易看到。我已经实现了使用这个,但它没有工作任何建议。 我得到的错误是没有找到匹配。但是有没有办法给下一个流提供matcher呢

  • 本文向大家介绍Scala序列上的模式匹配,包括了Scala序列上的模式匹配的使用技巧和注意事项,需要的朋友参考一下 示例 检查集合中元素的准确数量 现场演示 提取first(s) element(s)并将其余部分保留为集合: 通常,可以用于构建序列的任何形式都可以用于与现有序列进行模式匹配。 请注意,在使用Nil和::在对序列进行模式匹配时将起作用,但确实会将其转换为List,并且可能会产生意外结