Go 中连接字符串的 3 种方式

Go 中,字符串是字节的切片(slice),或者说是符文(rune)的切片。rune 以 unicode 存储,rune 可以存放任意字符,因此也可以存放例如希腊字母,rune 可应用于程序国际化。
以下是连接字符串的例子,用加号连接字符串效率不高,用stringbuilder效率最高,用 fmt 介于两者之间。3 种方法全部输出相同的 Hello, world.

package main

import (
	"fmt"
	"strings"
)

func main() {
    
    
	h := "Hello, "
	w := "world."

	// 方法1: using + not very efficient
	myString := h + w
	// 输出 Hello, World.
	fmt.Println(myString)
	
	// 方法2: using fmt - more efficient
	myString = fmt.Sprintf("%s%s", h, w)
	// 输出 Hello, World.
	fmt.Println(myString)

	// 方法3: using stringbuilder - very efficient
	var sb strings.Builder
	sb.WriteString(h)
	sb.WriteString(w)
	// 输出 Hello, World.
	fmt.Println(sb.String())  
}

猜你喜欢

转载自blog.csdn.net/ftell/article/details/123583523