fallthrough в Gofallthrough — это ключевое слово внутри switch, которое передаёт управление следующему case, не проверяя его условие.В отличие от C и многих других языков, в Go
switch по умолчанию не «проваливается» дальше: выполнение завершается сразу после первого совпавшего case, без явного break. fallthrough включает обратное поведение — принудительный переход к следующему блоку.switch n {
case 1:
fmt.Println("один")
fallthrough
case 2:
fmt.Println("два") // выполнится, даже если n == 1
default:
fmt.Println("другое")
}Важные нюансы:
•
fallthrough передаёт управление безусловно — условие следующего case игнорируется.• Он должен стоять последним оператором в
case, иначе будет ошибка компиляции.• Из последнего
case (или default, если он в конце) провалиться некуда — там fallthrough использовать нельзя.🐸 Библиотека Go для собеса