首页 > 后端开发 > Golang > 正文

## 如何将 Go 字符串中的小写字符转换为大写字符?

Barbara Streisand
发布: 2024-10-26 02:02:02
原创
618 人浏览过

## How Can I Convert Lowercase Characters to Uppercase in a Go String?

在 Go 中更改字符串

问:我想将字符串中的小写字符转换为大写,但 Go 抛出错误:“无法分配给 new_str[i] ”。我怎样才能实现这个目标?

答:了解 Go 字符串不变性

在 Go 中,字符串是不可变的,这意味着一旦创建,其内容就无法修改。此行为符合 Go 语言规范,其中规定:

“字符串是不可变的:一旦创建,就不可能更改字符串的内容。”

A:解决字符串不可变性

要修改 Go 中的字符串,您有两个选择:

  1. 将字符串转换为 []byte 切片并更改该切片。
  2. 创建一个新切片进行所需修改的字符串。

A:使用 []byte 切片更改字符串

这是代码的修改版本,它使用 []byte 切片来更改字符。

<code class="go">package main

import (
    "bytes"
    "fmt"
)

func ToUpper(str string) string {
    strBytes := []byte(str)
    for i := 0; i < len(str); i++ {
        if str[i] >= 'a' && str[i] <= 'z' {
            chr := uint8(rune(str[i]) - 'a' + 'A')
            strBytes[i] = chr
        }
    }
    return string(strBytes)
}

func main() {
    fmt.Println(ToUpper("cdsrgGDH7865fxgh"))
}
</code>
登录后复制

以上是## 如何将 Go 字符串中的小写字符转换为大写字符?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!