Функция fmt.Sprintln

Функция fmt.Sprintln форматирует переданные значения в строку, добавляя пробелы между аргументами и символ новой строки в конце. В отличие от fmt.Sprint, эта функция всегда добавляет пробел между аргументами, даже если они не являются строками, и завершает результат символом новой строки. Первым параметром функция принимает одно или несколько значений любого типа, которые нужно преобразовать в строку.

Синтаксис

gofmt.Sprintln(a ...any) string

Пример

Давайте сформируем строку из нескольких значений разных типов:

gopackage main

import "fmt"

func main() {
  res := fmt.Sprintln("Hello", "world", 2024, true)
  fmt.Printf("%q", res)
}

Результат выполнения кода:

go"Hello world 2024 true\n"

Пример

Давайте сравним поведение fmt.Sprintln и fmt.Sprint:

gopackage main

import "fmt"

func main() {
  sprintRes := fmt.Sprint("Hello", "world")
  sprintlnRes := fmt.Sprintln("Hello", "world")
  fmt.Printf("Sprint: %q\n", sprintRes)
  fmt.Printf("Sprintln: %q", sprintlnRes)
}

Результат выполнения кода:

go"Sprint: Helloworld"
"Sprintln: Hello world\n"

Пример

Давайте сформируем строку с числами и проверим наличие пробелов и новой строки:

gopackage main

import "fmt"

func main() {
  res := fmt.Sprintln(10, 20, 30)
  fmt.Printf("%q", res)
}

Результат выполнения кода:

go"10 20 30\n"

Смотрите также

  • функцию fmt.Sprint,
    которая форматирует значения без добавления пробелов и новой строки
  • функцию fmt.Sprintf,
    которая форматирует строку по шаблону с указанными спецификаторами
  • функцию fmt.Println,
    которая выводит значения в стандартный вывод с пробелами и новой строкой
  • функцию fmt.Print,
    которая выводит значения в стандартный вывод без пробелов и новой строки