【问题标题】:Elixir: when to use 'number' and when to use 'integer'Elixir:何时使用“数字”以及何时使用“整数”
【发布时间】:2014-05-14 22:50:08
【问题描述】:

这些示例似乎同时包含“数字”和“整数”。分别应该在哪些情况下使用?

编辑:这里是每个示例

@type bar :: %{atom => [{binary, integer}]}

def foo(x) when is_number(x), do: x

【问题讨论】:

  • 您能否澄清一下您指的是哪些示例,或者您具体想知道哪些场景?
  • 在不确切知道您引用哪些示例的情况下,我的猜测是“数字”指的是浮点数和整数,而整数特定于该类型的数字。但这只是猜测。
  • 编辑了问题以包含示例

标签: elixir


【解决方案1】:

数字是一种更通用的类型,它指的是浮点数和整数。如果您想检查一个值是否为数字,但不关心它是浮点数还是整数,请使用数字。如果要强制执行特定类型,请使用整数/浮点数。在上面的示例中,如果您需要更多具体性,可以使用 is_integer(x)is_float(x) 而不是 is_number(x)

【讨论】:

    猜你喜欢
    • 2016-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-14
    • 1970-01-01
    • 2012-06-07
    • 1970-01-01
    相关资源
    最近更新 更多