为了账号安全,请及时绑定邮箱和手机立即绑定

如何在Golang中找到下一个字符?

如何在Golang中找到下一个字符?

Go
潇湘沐 2021-09-27 14:23:22
我只是出于对 golang 的兴趣在做一些算法问题。我知道在其他语言中,要按字母顺序查找下一个字符,我可以对字符进行位移,因为字符(我想到的是 C)实际上是一个数字。所以我试着做"a" >> 2或者类似的东西,但是类型不匹配。我想知道如何实现这一目标。
查看完整描述

2 回答

?
慕森卡

TA贡献1806条经验 获得超8个赞

您正在尝试移动一个字符串,而不是一个字节,就像@Not_a_Golfer 所说的那样'a'>>2应该可以正常工作。


但是,要获得下一个字符,您可以执行以下操作:


func nextChar(ch byte) byte {

    if ch += 1; ch > 'z' {

        return 'a'

    }

    return ch

}

func main() {

    fmt.Println(string(nextChar('a')))

}

当然,如果您需要的不仅仅是 az 支持,它会更复杂,请查看unicode包和这篇关于 go 字符串的博客文章。


查看完整回答
反对 回复 2021-09-27
  • 2 回答
  • 0 关注
  • 149 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信