[英]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.