首頁 >後端開發 >Golang >如何檢查 Go float64 是否代表整數?

如何檢查 Go float64 是否代表整數?

Susan Sarandon
Susan Sarandon原創
2024-12-27 15:13:11635瀏覽

How Can I Check if a Go float64 Represents a Whole Number?

在 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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn