Java продължава и разбива ключови думи

1. Общ преглед

В тази бърза статия ще ви представим ключови думи за продължаване и разбиване на Java и ще се съсредоточим върху това как да ги използваме на практика.

Просто казано, изпълнението на тези изрази причинява разклоняване на текущия контролен поток и прекратява изпълнението на кода в текущата итерация.

2. почивка Отчета

На почивка изявлението се предлага в две форми: обозначено и етикетирани.

2.1. Без етикет почивка

Можем да използваме немаркирания оператор, за да прекратим цикъл for , while или do-while, както и блока switch-case :

for (int i = 0; i < 5; i++) { if (i == 3) { break; } }

Този фрагмент дефинира цикъл for, който трябва да се повтори пет пъти. Но когато броячът е равен на 3, условието if става вярно и операторът break прекъсва цикъла. Това кара контролния поток да бъде прехвърлен в оператора, който следва след края на цикъла for .

В случай на вложени цикъла, без етикет почивка изявление прекратява само вътрешния контур, че тя е в . Външните цикли продължават изпълнението:

for (int rowNum = 0; rowNum < 3; rowNum++) { for (int colNum = 0; colNum < 4; colNum++) { if (colNum == 3) { break; } } }

Този фрагмент е вложен за цикли. Когато colNum равнява на 3, на ако условието добие да е вярно и за почивка изявление предизвиква вътрешната за контур за прекратяване. Външният цикъл for обаче продължава да се повтаря.

2.2. Етикетирана почивка

Можем също така да използваме етикетиран оператор break , за да прекратим цикъл for , while или do-while . Етикетиран прекъсване прекратява външния цикъл .

При прекратяване контролния поток се прехвърля в оператора веднага след края на външния контур:

compare: for (int rowNum = 0; rowNum < 3; rowNum++) { for (int colNum = 0; colNum < 4; colNum++) { if (rowNum == 1 && colNum == 3) { break compare; } } }

В този пример въведохме етикет точно преди външния цикъл. Когато rowNum е равен на 1, а colNum е равен на 3, условието if се оценява на true и операторът break прекъсва външния цикъл.

След това управляващият поток се прехвърля в оператора, следващ края на външния цикъл for .

3. Продължаването на изявлението

Най продължи изявлението също така се предлага в две форми: обозначено и етикетирани.

3.1. Без етикет продължава

Можем да използваме немаркиран оператор, за да заобиколим изпълнението на останалите изрази в текущата итерация на цикъл for , while или do-while . Той прескача до края на вътрешния цикъл и продължава цикъла :

int counter = 0; for (int rowNum = 0; rowNum < 3; rowNum++) { for (int colNum = 0; colNum < 4; colNum++) { if (colNum != 3) { continue; } counter++; } }

В този откъс, когато colNum не е равно на 3, немаркирана продължи изявлението прескача текущата итерация, заобикаляйки по този начин нарастването на променливата брояч в тази итерация. Външният цикъл for обаче продължава да се повтаря. И така, нарастването на брояча се случва само когато colNum е равно на 3 във всяка итерация на външния цикъл for .

3.2. Етикетиран продължава

Можем да използваме и обозначен продължителен оператор, който прескача външния цикъл. При прескачане управляващият поток се прехвърля в края на външния контур, като ефективно продължава итерацията на външния контур:

int counter = 0; compare: for (int rowNum = 0; rowNum < 3; rowNum++) { for (int colNum = 0; colNum < 4; colNum++) { if (colNum == 3) { counter++; continue compare; } } }

Въведохме етикет точно преди външния цикъл. Когато colNum е равно на 3, броячът на променливите се увеличава. Маркираният оператор за продължаване кара итерацията на външен цикъл for да пропусне.

Контролният поток се прехвърля в края на външния цикъл for , който продължава със следващата итерация.

4. Заключение

В този урок видяхме различни начини за използване на ключовите думи break и продължаваме като разклоняващи се изрази в Java.

Пълният код, представен в тази статия, е достъпен в GitHub.