go學習 - 字符串翻轉
代碼如下,比較low,但能實現:
package go_test_test
import (
"fmt"
"testing"
)
/**
* Created by Goland
* User: wkk [email protected]
* Time: 2022/8/5 - 00:21
* Desc: <翻轉字符串>
*/
func TestReverseStr(t *testing.T) {
var str, newStr = "abcde", ""
fmt.Println("origin str:", str)
newStr = reverse(str)
fmt.Println("new str:", newStr)
}
// 翻轉字符串
// 字符串翻轉,先將字符存放在byte切片中,再將byte切片強制類型轉換爲string
// 字符串本身值不可變,但是可以取值後存放在其他切片中,再將其他切片強制類型轉換
func reverse(str string) string {
length := len(str)
if length == 0 {
return ""
}
// 聲明切片
var result []byte
for i := 0; i < length; i++ {
result = append(result, str[length-i-1])
}
return string(result)
}