前言
本文主要给大家介绍了关于Golang实现字符串倒序的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍:
字符串倒置如下:
Hello World --> dlroW olleH
解决方案1:
length := len(str) array := make([]string , length) for i , v := range str{ array[i] = string(v) } for i := 0 ; i < length/2 ; i++ { array[i], array[length -i - 1] = array[length - i -1 ], array[i] } str = "" for _ , v := range array { str += v }
大致想法是:
str -循环-> array -循环-> 倒置 --循环--> str
可以转换中文.
问题:
看上去比较繁琐, 而且使用3层循环, 效率肯定不高,
解决方案2
bytes := []rune(str) for from , to := 0 , len(bytes) -1 ; from < to ; from , to = from + 1, to -1{ bytes[from] , bytes[to] = bytes[to] , bytes[from] } str = string(bytes) return str
使用一层循环, 倒置之后 直接使用 go 内置的 string 函数将 []byte 转换为string
大致思路:
string --直接使用构建数组的方法, 将str 传入进去, 得到 array --> []byte ---for 循环---> 倒置 ---内置的 string 函数--> string
问题:
不能转换 byte 类型
解决方案3 :
bytes := []rune(str) for from , to := 0 , len(bytes) -1 ; from < to ; from , to = from + 1, to -1{ bytes[from] , bytes[to] = bytes[to] , bytes[from] } str = string(bytes) return str
解决方案2不能转换中文字符的问题:
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。
参考:
string rune byte 的关系
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
更新日志
2024年05月20日
2024年05月20日
- 《哈迪斯2》EA阶段至少持续到年底!此前将有重大更新
- 钟志刚《淡淡君情》24K金限量头版[低速原抓WAV+CUE]
- 金山游戏封神再临视频首曝 预计年内上线
- IGN分享PC《对马岛之魂》28分钟实机:极致的画面表现
- 钟明秋《是时候HQ》头版限量编号[低速原抓WAV分轨]
- 蜀门手游五月大服龙城飞将开启 全新大逃杀玩法上线
- 崩坏星穹铁道平民神主日怎么打 神主日萌新通关攻略
- 赵传《我是一只小小鸟》日本东芝1A1版 [WAV+CUE][435M]
- 庄达菲《东张西望》[320K/MP3][40.28MB]
- 庄达菲《东张西望》[24bit 48kHz][FLAC/分轨][288.46MB]
- 金海心.-.[心感觉].专辑[原抓WAV+CUE]
- KOKIA心は?かり(2012K2HD2016Mora)[24bit96kHzFLAC]
- 林一峰2017-绝对清白2CD[香港首版][WAV+CUE
- 石凯《数星一整夜》[320K/MP3][44.18MB]
- 石凯《数星一整夜》[24bit 48kHz][FLAC/分轨][395.49MB]