與 string 值相比,strings.builder 型別的值的優勢:
與 string 值相比,builder 值的優勢主要體現在字串拼接方面。
package main
import (
"fmt"
"strings"
)func main() )
builder1.writestring("do not copy a non-zero builder.")
fmt.printf("the second output(%d):\n\"%s\"\n", builder1.len(), builder1.string())
fmt.println()
// grow 方法會生成乙個位元組切片作為新的內容容器,容量為原容器容量的二倍加 n
// 然後把原容器中的所有位元組全部拷貝到新容器中
// grow 方法也可能什麼都不做,前提是:當前容器中的未用容量 >= n
fmt.println("grow the builder ...")
builder1.grow(10)
fmt.printf("the length of contents in the builder is %d.\n", builder1.len())
fmt.println()
// reset 方法可以讓 builder 值重回到零值狀態,就像從未被使用過
// 會引發 panic
_ = builder2
builder3 := builder1
// 會引發 panic
_ = builder3
// 已使用的 builder 的指標值可以複製
// 但因此產生的操作衝突需自行避免
f2 := func(bp *strings.builder)
f2(&builder1)
// 已使用的 builder 值在複製前呼叫 reset() 方法即可
builder1.reset()
builder5 := builder1
builder5.grow(1) // 不會引發 panic
}
reader 值實現高效讀取的關鍵在於它內部的已讀計數。計數值代表下一次讀取的起始索引位置。
linux shell expr命令 字串操作
1 計算字串的長度。我們可以用awk中的length s 進行計算。我們也可以用echo中的echo 進行計算,當然也可以expr中的expr length string 求出字串的長度。舉例 root localhost shell string hello,everyone my name is...
Linux教程 Shell中字串與陣列操作例項
本篇主要介紹了介紹在shell指令碼中對於字串的處理,資料變數的定義與使用。字串的擷取,只是單純將字串擷取出來,對原來的變數並不會進行修改。school this is string.echo 確定變數的長度 echo 使用 方式擷取字串時,起始位置是從0開始的 和陣列下標編號類似 expr sub...
Python關於字串的內建函式 字串操作)
環境 python3.6.4 1.字串首字母大寫 capitalize s atlan print s.capitalize atlan2.字串全大寫 upper s atlan print s.upper atlan3.字串全小寫 lower s atlan print s.lower atlan...