我開始學習去了,我想實現一些算法。我可以遍歷字符串,然後獲取字符,但這些字符是Unicode編號。迭代過去的字符串和從字符串中去除字符串
如何在字符串中連接字符爲字符串?你有參考嗎?我無法在官方網頁上找到有關原始圖片的任何內容。
我開始學習去了,我想實現一些算法。我可以遍歷字符串,然後獲取字符,但這些字符是Unicode編號。迭代過去的字符串和從字符串中去除字符串
如何在字符串中連接字符爲字符串?你有參考嗎?我無法在官方網頁上找到有關原始圖片的任何內容。
使用range
對字符串進行迭代可爲您提供Unicode字符,而使用索引對 字符串進行迭代可爲您提供字節。請參閱規格 runes和strings以及conversions。
正如新白癡提到的,字符串可以使用+
operator連接在一起。
從字符到字符串的轉換是雙重的。你可以轉換 一個byte
(或字節序列)爲字符串:
string(byte('A'))
,或者你可以轉換rune
(或符文序列)轉換爲字符串:
string(rune('µ'))
不同的是,符文代表Unicode字符,而字節表示 8位值。
但是,所有這些都在上面鏈接的規範的各個部分中提到。 這很容易理解,你一定要閱讀它。
感謝您解釋使用索引和「範圍」迭代的區別 –
使用+
str:= str + "a"
你可以嘗試這樣的事情:
string1 := "abc"
character1 := byte('A')
string1 += string(character1)
即使this answer可能會有所幫助。
可以將[]rune
轉化爲直接的字符串:
string([]rune{'h', 'e', 'l', 'l', 'o', '☃'})
http://play.golang.org/p/P9vKXlo47c
作爲參考,它在圍棋規範的轉換部分,標題爲「轉換和從部分字符串類型」
http://golang.org/ref/spec#Conversions
爲串聯,你可能不希望精讀使用+
運算符鏈接每個單個字符,因爲這將在引擎蓋下執行大量複製。如果你一次只符合一個符文,並且你沒有建立一個符文的中間片段,那麼你很可能想要使用一個bytes.Buffer
,它有一個WriteRune
這種方法。 http://golang.org/pkg/bytes/#Buffer.WriteRune
那麼這到底是什麼「炭」? Go中沒有這種類型 – newacct