繁体   English   中英

F#转换一个int

[英]F# casting an int

这是一件微不足道的事情,但是我真的很难使它生效。 我想转换sqrt n的结果,其中n的类型为int64 ,最后将其传递给需要一个int的函数,但是我真的很想获得一个体面的解决方案,这是我想出的方式,但这是令人毛骨悚然,我无法相信在C#中如此琐碎的事情在F#中应该很难。

n 
|> float 
|> sqrt 
|> int 
|> function

这是F#-如果您没有所需的功能,请编写一个函数。 例如:

let inline sqrttoint n =
    (int (sqrt (float n)))

n |> sqrttoint |> function

最重要的是,它适用于任何可以float

C#与F#的主要问题在于,您习惯于C#会自动提升数字类型,而F#希望您关心大多数事物的类型,并且类型变化需要更加明确。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM