Срез содержит десять пустых строк. fmt.Println напечатает квадратные скобки с девятью пробелами между элементами.
Какой вывод появится в консоли при запуске программы №57
Срез содержит десять пустых строк. fmt.Println напечатает квадратные скобки с девятью пробелами между элементами.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Определите, какой результат будет выведен при выполнении следующего кода:
import "fmt"
func main() {
arr := make([]string, 10)
fmt.Println(arr)
}
Ответ
Срез содержит десять пустых строк. fmt.Println напечатает квадратные скобки с девятью пробелами между элементами.
После make([]string, 10) длина среза равна 10, а каждый элемент имеет нулевое значение string — пустую строку. Формат по умолчанию не добавляет кавычки, поэтому элементы визуально почти не различимы.
Для проверки удобно вывести fmt.Printf("%q\n", arr): тогда будут видны десять "". Это не то же самое, что пустой срез длины 0, который выглядит как []. Как самостоятельному файлу фрагменту также требуется строка package main.