在 Go 中根據浮點數確定整數值
在 Go 中,確定 float64 是否表示整數可能會帶來挑戰。模運算子 (%) 不能直接用於浮點數。
解1:比較Float64 與等效整數
如果您的數字可以放入int64,請考慮比較浮點數及其轉換後的整數value:
if a == float64(int64(a)) { ... }
解決方案2:利用math.Trunc
對於整個float64 域,您可以使用math.Trunc 函數:
if a == math.Trunc(a) { ... }
例如:
package main import ( "fmt" "math" ) func main() { var a float64 = 2.00 if a == math.Trunc(a) { fmt.Println("yay") } else { fmt.Println("you fail") } }
此程式碼正確輸出當a設定為2.00時“yay”,表示它是一個整數。
以上是如何檢查 Go float64 是否代表整數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!