如何在 Elm 中将 Float 转换为 Int?

Bro*_*ock 6 floating-point integer elm

如果我有一个 Float 值并且希望在其他地方使用 Int 值,如何进行转换?

Bro*_*ock 7

Elm 使得值之间的转换变得非常容易!

(注意:由于 Elm 是函数式的,并且所有变量都是不可变的,因此该值实际上并未转换,而是创建了一个新的等效值。)

您所要做的就是选择您想要对小数做什么!

round 用round做最接近的整数

1.5 |> round -- 2 : Int
Run Code Online (Sandbox Code Playgroud)

用天花板围起来

1.5 |> ceiling -- 2 : Int
Run Code Online (Sandbox Code Playgroud)

地板向下舍入

1.5 |> floor -- 1 : Int
Run Code Online (Sandbox Code Playgroud)

忽略带有截断的小数

1.5 |> truncate -- 1 : Int
Run Code Online (Sandbox Code Playgroud)

使用toFloat转换回来同样容易

1 |> toFloat -- 1.0 : Float
Run Code Online (Sandbox Code Playgroud)

  • 如果您知道要将 `Float` 转换为 `Int`,您可以在 Elm Search 上搜索该类型签名,例如 https://klaaftertief.github.io/elm-search/?q=Float%20- %3E%20整数 (3认同)