在Go语言中,字符串格式化主要通过标准库中的fmt
包来实现。本文将详细介绍Go中常用的字符串格式化方法,帮助开发者掌握高效处理字符串的技巧。
fmt包提供了多种格式化字符串的函数:
// 标准输出
fmt.Printf("Hello, %s!\n", "World")
// 返回格式化字符串
str := fmt.Sprintf("The answer is %d", 42)
// 写入到io.Writer
fmt.Fprintf(os.Stdout, "Value: %v\n", someValue)
fmt.Printf("%10s\n", "hello") // 右对齐
fmt.Printf("%-10s\n", "hello") // 左对齐
fmt.Printf("%.2f\n", 3.14159) // 保留2位小数
通过实现fmt.Stringer
接口可以自定义类型的输出格式:
type Point struct { X, Y int }
func (p Point) String() string {
return fmt.Sprintf("(%d,%d)", p.X, p.Y)
}
+
运算符或strings.Builder
性能更好bytes.Buffer
Sprintf
通过掌握这些字符串格式化技巧,可以显著提高Go程序的开发效率和运行性能。