switch case в Go

На первый взгляд, все стандартные элементы языка Go, такие как циклы или условные переходы, работают аналогично другим языкам. Однако, с операцией switch есть одна особенность, которая заключается в следующем: Если в других языках после каждого case необходимо было ставить break для того, что бы выйти из switch то в Go этого делать не нужно так как он по умолчанию выходит из case в который попал, и не проваливается в следующие. А вот для того, что бы провалиться в следующий блок case существует специальное служебное слово fallthrough. Но и на использовании fallthrough есть некоторые ограничения. В то время как break можно было указывать в любом месте блока case (не обязательно в конце или в других блоках, таких как if) fallthrough необходимо указывать только в самом конце и не вкладывать в другие блоки, в противном случае код считается не валидным.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>