package main import ( "fmt" "strings" ) func main() { // 字符串初始化 s1 := "Golang语言" s2 := `多行字符串, 小猫:喵喵喵, 小狗:汪汪汪` fmt.Println("s1:", s1) fmt.Println("s2:", s2) // 字符串长度(字节数) fmt.Printf("s1长度(字节): %d\n", len(s1)) // 输出12("Golang"6字节 + "语言"6字节) // 字符串遍历(for vs for range) fmt.Println("for遍历(按byte):") for i := 0; i < len(s1); i++ { fmt.Printf("%x ", s1[i]) // 输出字节的十六进制,中文会拆分为多字节 } fmt.Println("\nfor range遍历(按rune):") for _, r := range s1 { fmt.Printf("%c ", r) // 输出完整字符:G o l a n g 语 言 } // 字符串修改(需转[]rune) s3 := "hello" runes := []rune(s3) runes[0] = 'H' s3 = string(runes) fmt.Printf("\n修改后: %s\n", s3) // 输出Hello // 高效字符串拼接 var builder strings.Builder for i := 0; i < 5; i++ { builder.WriteString(fmt.Sprintf("part%d", i)) } fmt.Println("拼接结果:", builder.String()) // part0part1part2part3part4 }