ну вам же не нужно если id = 1 чтобы выполнялся код из case 2. или вы думаете что брэйк вообще отменяет какое либо выполнение когда. а зачем тогда писать неисполнимый код? мне кажется вы не понимаете как работает switch. вам же дали ссылку на основы? или вы прочитали и вам непонятно?
да я прочитал несколько раз сначала там а потом уже пришел сюда, но кажется не правильно понял. то есть логика работает так. break останавливает не весь цикл, а всего лишь выполнение других усвловий. так что ли? найди подходящий id - остановиться перейти к следующему. верно?