Выбор ответа Middle Строки, байты и руны обновлено

strings.Split пустой строки

Вопрос

Что вернёт strings.Split("", ",")?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Слайс из одной пустой строки, len 1. Split режет строку по разделителю и возвращает все части, даже пустые.

Варианты ответа

  1. Слайс из одной пустой строки, len 1правильный ответ
  2. Пустой слайс []string{}, len 0
  3. nil, как у пустого результата
  4. panic: пустая строка для разбора

Разбор

Split режет строку по разделителю и возвращает все части, даже пустые. У пустой строки одна часть, сама пустая строка. Частый баг при разборе CSV-параметра ?ids=: получается [""], и цикл обрабатывает «пустой id». Если нужно игнорировать пустые части, подходит strings.FieldsFunc или проверка if s == "".

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.