Golang 中 10 进制转 16 进制的多种方法及代码示例

2024-12-28 23:02:14   小编

Golang 中 10 进制转 16 进制的多种方法及代码示例

在 Go 语言中,将 10 进制数转换为 16 进制数有多种方法,下面为您详细介绍并提供相应的代码示例。

方法一:使用 strconv.FormatInt 函数

package main

import (
    "fmt"
    "strconv"
)

func decimalToHexadecimal(num int64) string {
    return strconv.FormatInt(num, 16)
}

func main() {
    num := 255
    hexStr := decimalToHexadecimal(int64(num))
    fmt.Printf("10 进制 %d 转换为 16 进制为: %s\n", num, hexStr)
}

方法二:使用 fmt.Sprintf 函数

package main

import "fmt"

func decimalToHexadecimal2(num int) string {
    return fmt.Sprintf("%x", num)
}

func main() {
    num := 128
    hexStr := decimalToHexadecimal2(num)
    fmt.Printf("10 进制 %d 转换为 16 进制为: %s\n", num, hexStr)
}

方法三:手动实现转换

package main

import "fmt"

func decimalToHexadecimal3(num int) string {
    const hexDigits = "0123456789abcdef"
    result := ""
    for num!= 0 {
        digit := num & 15
        result = string(hexDigits[digit]) + result
        num >>= 4
    }
    return result
}

func main() {
    num := 64
    hexStr := decimalToHexadecimal3(num)
    fmt.Printf("10 进制 %d 转换为 16 进制为: %s\n", num, hexStr)
}

以上就是在 Go 语言中实现 10 进制转 16 进制的几种常见方法,您可以根据实际需求选择适合的方式。在实际开发中,根据具体的场景和性能要求,合理运用这些方法能够提高代码的效率和可读性。希望通过这些示例,能够帮助您更好地理解和运用 Go 语言进行数值转换的操作。

TAGS: Golang 编程 十进制与十六进制 Golang 代码示例

欢迎使用万千站长工具!

Welcome to www.zzTool.com