91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Go如何實現字符串的逆序

發布時間:2020-07-30 16:47:40 來源:億速云 閱讀:342 作者:Leah 欄目:編程語言

這期內容當中小編將會給大家帶來有關Go如何實現字符串的逆序,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

?

本文使用Go來實現字符串逆序這個功能,用最簡單的話術讓你理解

附帶在Go中debug的小技巧

例如:Hello  轉換為  olleH

?

一、實現字符串的逆序

在go中,字符串要根據索引獲取值是需要轉為字節的。接下來我們看一個實現代碼

代碼應該都看的明白,下面咔咔用圖解來幫助解釋一下

package main

import (
"fmt"
)

func stringReverse() {
var str = "Hello"
// 字符串轉字節
var bytes []byte = []byte(str)
for i := 0; i < len(str)/2; i++ {
 // 定義一個變量存放從后往前的值
 tmp := bytes[len(str)-i-1]
 // 從后往前的值跟從前往后的值調換
 bytes[len(str)-i-1] = bytes[i]
 // 從前往后的值跟從后往前的值進行調換
 bytes[i] = tmp
}
str = string(bytes)
fmt.Println(str)
}

這段代碼可以看到循環的最大次數就是將字符串的長度除了2

在這副圖中我們可以看到第一次循環時是將第一字符串跟最后一個字符串進行調換

第二次循環時將第二個值跟倒數第二值進行調換Go如何實現字符串的逆序

這就是這塊代碼的意義所在

先將索引最后的字符串的值拿出來

接著讓最后索引的字符串跟第一個索引字符串相等   也就是上圖中第一個步驟  讓最后一個值跟等于第一個值

然后把第一個索引的字符串改為我們第一步保存的值  同理  讓第一個值等于最后一個值

Go如何實現字符串的逆序

在go中還有好幾種實現這個過程,這里咔咔在提供一種供大家參考

這種方式需要引入包strings,也是官方推薦的一種方式

func stringReverse1() {
var str = "hello"
var bytes []byte = []byte(str)
var build strings.Builder
for i := 0; i < len(bytes); i++ {
 i2 := bytes[len(bytes)-i-1]
 build.WriteString(string(i2))
}
s3 := build.String()
fmt.Println(s3)
}

執行倆個代碼,檢測是否可行

Go如何實現字符串的逆序

二、給你一個小技巧讓你在用Go的Debug時游刃有余

假設我們想調試一下這幾個值的時候,就會發現go會直接報出一個變量沒有使用的錯誤。這種寫法在PHP中是不存在報錯的,這個錯誤就會導致go的程序編譯無法通過

Go如何實現字符串的逆序

那么我們應該如何模擬已經使用了這個值呢!

可以使用一個底杠來解決這個問題

這時就可以使用debug來調試了我們想要得值了

Go如何實現字符串的逆序

?

堅持學習、堅持寫博、堅持分享是咔咔從業以來一直所秉持的信念。希望在諾大互聯網中咔咔的文章能帶給你一絲絲幫助。

?

上述就是小編為大家分享的Go如何實現字符串的逆序了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

桂阳县| 胶南市| 博罗县| 伊宁县| 安塞县| 崇明县| 建瓯市| 佛冈县| 宁南县| 和田市| 彝良县| 宜州市| 五河县| 卓资县| 新龙县| 崇左市| 绥棱县| 苗栗县| 盐边县| 宁津县| 斗六市| 宁德市| 开阳县| 静海县| 灵川县| 陆河县| 武定县| 连南| 承德市| 惠东县| 大英县| 富平县| 曲靖市| 宕昌县| 昆明市| 榕江县| 新干县| 云和县| 锡林郭勒盟| 齐河县| 宁海县|