卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章44484本站已运行31027

深入理解Golang中字符和整型的转换

go 语言中字符和整型可通过以下方式转换:字符转整型:使用 strconv.atoi() 将字符串转换为十进制整型。整型转字符:使用 strconv.itoa() 将整型转换为十进制字符串,该整型值会被视为 ascii 码值。实战案例:进制转换:使用 strconv.parseint() 和 strconv.formatint() 转换不同进制的整型。ascii 码转换:使用 byte() 和 int() 将字符和 ascii 码值进行互相转换。

深入理解Golang中字符和整型的转换

深入理解 Go 中字符和整型的转换

在 Go 语言中,字符和整型之间的转换是常见任务。本篇文章将深入解析这些转换背后的机制并提供实战案例。

字符转整型

strconv.Atoi() 函数可将字符串转换为整型:

import "strconv"

func CharToInt(char byte) (int, error) {
    return strconv.Atoi(string(char))
}

整型转字符

strconv.Itoa() 函数可将整型转换为字符串:

func IntToChar(num int) byte {
    return num + '0' // ‘0’ 的 ASCII 值为 48
}

实战案例

进制转换

func ConvertBase(num string, fromBase, toBase int) (string, error) {
    i, err := strconv.ParseInt(num, fromBase, 64)
    if err != nil {
        return "", err
    }
    return strconv.FormatInt(i, toBase), nil
}

ASCII 码转换

func AsciiToChar(ascii int) byte {
    return byte(ascii)
}

func CharToAscii(char byte) int {
    return int(char)
}

注意

  • strconv.ParseInt()strconv.FormatInt() 可处理不同进制的整型(例如二进制、八进制、十进制等)。
  • strconv.Atoi()strconv.Itoa() 仅处理十进制整型。
  • 如果字符串不是有效的整型表示,strconv.Atoi()strconv.ParseInt() 会返回错误。
卓越飞翔博客
上一篇: 深入探讨Golang在各个领域的应用场景
下一篇: 返回列表
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏