Po raz pierwszy zobaczyłem to słowo kluczowe i zastanawiałem się, czy ktoś może mi wyjaśnić, co robi.
- Co to jest
continue
słowo kluczowe? - Jak to działa?
- Kiedy jest używany?
continue
Oświadczenie bez etykiety ponownie wykonać ze stanu najgłębszej while
lub do
pętli, az wypowiedzi aktualizacji najbardziej wewnętrznej for
pętli. Jest często używany do wcześniejszego zakończenia przetwarzania pętli, a tym samym do unikania głęboko zagnieżdżonych if
instrukcji. W poniższym przykładzie continue
zostanie wyświetlony następny wiersz bez przetwarzania następującej instrukcji w pętli.
while (getNext(line)) {
if (line.isEmpty() || line.isComment())
continue;
// More code here
}
Z etykietą continue
ponownie uruchomi się z pętli z odpowiednią etykietą, a nie z wewnętrznej pętli. Można tego użyć do ucieczki głęboko zagnieżdżonych pętli lub po prostu dla przejrzystości.
Czasami continue
jest również używany jako symbol zastępczy, aby uczynić pustą treść pętli bardziej wyraźną.
for (count = 0; foo.moreData(); count++)
continue;
Ta sama instrukcja bez etykiety istnieje również w C i C ++. Odpowiednikiem w Perlu jest next
.
Ten typ przepływu sterowania nie jest zalecany, ale jeśli tak zdecydujesz, możesz także użyć continue
do symulacji ograniczonej formy goto
. W poniższym przykładzie continue
ponownie uruchomi pustą for (;;)
pętlę.
aLoopName: for (;;) {
// ...
while (someCondition)
// ...
if (otherCondition)
continue aLoopName;
continue
jest trochę jak goto
. Czy znasz break
? W przeciwieństwie do nich łatwiej jest myśleć o nich:
break
kończy pętlę (przeskakuje do kodu poniżej).
continue
kończy resztę przetwarzania kodu w pętli dla bieżącej iteracji, ale kontynuuje pętlę.
Zobaczmy przykład:
Otrzymałoby to sumę tylko liczb nieparzystych od 1 do 100.
źródło
Jeśli myślisz o ciele pętli jako podprogramie,
continue
to jest coś w rodzajureturn
. To samo słowo kluczowe istnieje w C i służy temu samemu celowi. Oto wymyślony przykład:Spowoduje to wydrukowanie tylko liczb nieparzystych.
źródło
Ogólnie widzę
continue
(ibreak
) jako ostrzeżenie, że kod może wymagać pewnego refaktoryzacji, szczególnie jeśliwhile
lubfor
deklaracja pętli nie jest natychmiast widoczna. To samo dotyczyreturn
metody, ale z nieco innego powodu.Jak już powiedzieli inni,
continue
przechodzi do następnej iteracji pętli, natomiastbreak
wychodzi z otaczającej pętli.Mogą to być przedziały czasowe konserwacji, ponieważ nie ma bezpośredniego połączenia między
continue
/break
a pętlą, którą kontynuuje / przerywa poza kontekstem; dodaj wewnętrzną pętlę lub przenieś „wnętrzności” pętli do osobnej metody i uzyskasz ukryty efektcontinue
/break
fail.IMHO najlepiej użyć ich jako ostateczności, a następnie upewnić się, że ich użycie jest ściśle zgrupowane na początku lub na końcu pętli, aby następny programista mógł zobaczyć „granice” pętli na jednym ekranie .
continue
,break
ireturn
(inne niż One True Return na końcu twojej metody) wszystkie należą do ogólnej kategorii „ukrytych GOTO”. Umieszczają kontrolę pętli i funkcji w nieoczekiwanych miejscach, co następnie powoduje błędy.źródło
„kontynuuj” w Javie oznacza przejście do końca bieżącej pętli, oznacza: jeśli kompilator zobaczy kontynuację w pętli, przejdzie do następnej iteracji
Przykład: jest to kod do drukowania liczb nieparzystych od 1 do 10
kompilator zignoruje kod wydruku, ilekroć będzie kontynuował przechodzenie do następnej iteracji
źródło
Jak już wspomniano
continue
, pominie przetwarzanie kodu pod nim i do końca pętli. Następnie zostaniesz przeniesiony do stanu pętli i uruchom następną iterację, jeśli ten warunek nadal się utrzymuje (lub jeśli istnieje flaga, do wskazanego stanu pętli).Należy podkreślić, że w przypadku
do - while
ciebie jesteś przenoszony do stanu na dole po, acontinue
nie na początku pętli.Dlatego wiele osób nie odpowiada poprawnie na to, co wygeneruje poniższy kod.
* Jeśli twoja odpowiedź
aSet
będzie zawierała liczby nieparzyste tylko w 100% ... jesteś w błędzie!źródło
Kontynuuj jest słowem kluczowym w Javie i służy do pominięcia bieżącej iteracji.
Załóżmy, że chcesz wydrukować wszystkie liczby nieparzyste od 1 do 100
Instrukcja Kontynuuj w powyższym programie po prostu pomija iterację, gdy i jest parzyste, i wypisuje wartość i, gdy jest nieparzysta.
Instrukcja Kontynuuj po prostu wyciąga Cię z pętli bez wykonywania pozostałych instrukcji w pętli i uruchamia następną iterację.
źródło
Rozważ warunek If Else. Instrukcja continu wykonuje to, co jest w warunku i wychodzi z tego warunku, tzn. Przeskakuje do następnej iteracji lub warunku. Ale Przerwa opuszcza pętlę. Rozważ następujący program. „
Wyświetli się: aa cc Out of the loop.
Jeśli użyjesz break zamiast kontynuowania (After if.), Po prostu wypisze aa i poza pętlą .
Jeśli warunek „bb” jest równy ss: dla Kontynuuj: przechodzi do następnej iteracji, tj. „Cc” .equals (ss). For Break: wychodzi z pętli i drukuje „Out of the loop”.
źródło
break
Jestem trochę spóźniony na imprezę, ale ...
Warto wspomnieć, że
continue
jest to przydatne w przypadku pustych pętli, w których cała praca jest wykonywana w wyrażeniu warunkowym kontrolującym pętlę. Na przykład:W takim przypadku cała praca z odczytaniem znaku i dołączeniem go
buffer
odbywa się w wyrażeniu kontrolującymwhile
pętlę.continue
Oświadczenie służy jako wskaźnik wizualny, że pętla nie potrzebuje organizm.Jest to trochę bardziej oczywiste niż odpowiednik:
i zdecydowanie lepszy (i bezpieczniejszy) styl kodowania niż używanie pustych instrukcji, takich jak:
źródło
while
stało się treściąwhile
klauzuli, i które nie byłoby wizualnie oczywiste. Wyraźnecontinue
jest oczywiste i przekazuje zamiar, którego nie zawiera puste stwierdzenie.Zasadniczo w Javie kontynuacja jest instrukcją. Tak więc instrukcja Kontynuacja jest zwykle używana z pętlami, aby pominąć bieżącą iterację.
Aby dowiedzieć się, jak i kiedy jest używany w Javie, zapoznaj się z linkiem poniżej. Ma wyjaśnienie z przykładem.
https://www.flowerbrackets.com/continue-java-example/
Mam nadzieję, że to pomoże !!
źródło
continue
musi znajdować się w pętli, w przeciwnym razie pokazuje błąd poniżej:źródło
Instrukcja kontynuacji jest używana w strukturze kontroli pętli, gdy trzeba natychmiast przejść do następnej iteracji pętli.
Można go używać z pętlą for lub while. Instrukcja kontynuacji Java jest używana do kontynuowania pętli. Kontynuuje bieżący przepływ programu i pomija pozostały kod w określonych warunkach.
W przypadku pętli wewnętrznej kontynuuje tylko pętlę wewnętrzną.
Możemy używać instrukcji kontynuacji Java we wszystkich typach pętli, takich jak pętla for, loop i do-while.
na przykład
wynik:
[numer 5 pomija]
źródło