📌  相关文章
📜  如何在 Golang 中使用 strconv.FormatUint()函数?(1)

📅  最后修改于: 2023-12-03 14:52:18.143000             🧑  作者: Mango

如何在 Golang 中使用 strconv.FormatUint() 函数?

在 Golang 中,strconv.FormatUint() 函数用于将 uint64 类型的整数转换为字符串。该函数通常用于格式化输出,例如将整数值以指定的进制格式化为字符串。

函数类型定义

该函数的类型定义如下:

func FormatUint(i uint64, base int) string

其中:

  • i 表示要转换的整数值;
  • base 表示要使用的进制,范围为 2~36,其中 2 表示二进制,10 表示十进制,16 表示十六进制等。

该函数返回转换后的字符串。

使用示例

下面是使用 strconv.FormatUint() 函数将整形值转换为字符串的示例代码:

package main

import (
    "fmt"
    "strconv"
)

func main() {
    var i uint64 = 1234567890
    s2 := strconv.FormatUint(i, 2)
    s8 := strconv.FormatUint(i, 8)
    s10 := strconv.FormatUint(i, 10)
    s16 := strconv.FormatUint(i, 16)

    fmt.Printf("Binary: %s\n", s2)
    fmt.Printf("Octal: %s\n", s8)
    fmt.Printf("Decimal: %s\n", s10)
    fmt.Printf("Hexadecimal: %s\n", s16)
}

输出结果:

Binary: 1001001100101100000001011010010
Octal: 11145401322
Decimal: 1234567890
Hexadecimal: 499602d2

在上面的示例代码中,我们先定义了一个 uint64 类型的整数值 i,然后使用四种不同的进制将其转换为字符串,并将这四个字符串逐一输出。

错误处理

需要注意的是,当 base 不在合法的进制范围内时,FormatUint() 函数将会返回一个错误。因此,我们需要在使用该函数时进行错误处理,避免程序因此而崩溃。

下面是一个具有错误处理机制的使用示例:

package main

import (
    "fmt"
    "strconv"
)

func main() {
    var i uint64 = 1234567890
    s, err := strconv.FormatUint(i, 37)
    if err != nil {
        fmt.Printf("Error: %v\n", err)
    } else {
        fmt.Printf("String: %v\n", s)
    }
}

在上面的示例代码中,我们故意将进制参数设置为 37,以测试是否会出现错误。如果 FormatUint() 函数返回错误,则会将该错误输出至控制台,否则将输出转换后的字符串。

总结

在 Golang 中,strconv.FormatUint() 函数是将 uint64 类型的整数值转换为字符串的重要工具。我们可以使用该函数将整数值以不同进制的形式格式化为字符串,并用于格式化输出。需要注意的是,出于错误处理的目的,我们必须始终进行错误处理。