Pętla WHILE służy do cyklicznego wykonywania pewnego fragmentu kodu tak długo, jak długo określony warunek jest prawdziwy, tj. dopóty dopóki warunek pętli ma wartość true. Pętla WHILE ma następującą składnię:
while( {warunek pętli} ) { {ciało pętli} }
Kod oznaczony jako {ciało pętli} wykonywany jest tak długo jak długo wyrażenie oznaczone jako {warunek pętli} jest prawdziwe. Przykładowo, poniższa metoda lowerThan(…) wyświetla wszystkie liczby naturalne mniejsze od liczby num przekazanej jako parametr wywołania:
public void lowerThan(int num) { int x = 0; while( x < num ) { System.out.println(x); x = x + 1; } }
Pętla DO-WHILE to wariant pętli WHILE. Różnica polega na tym, że w pętli WHILE warunek sprawdzany jest przed wykonaniem ciała pętli, natomiast w pętli DO-WHILE po. Składnia pętli DO-WHILE jest następująca:
do { {ciało pętli} } while ( {warunek pętli} );
Zauważmy że {ciało pętli} zawsze wykona się co najmniej raz, nawet jeśli {warunek pętli} jest od początku fałszywy. Semantyka pętli DO-WHILE jest następująca: wpierw wykonaj {ciało pętli}, potem sprawdź czy prawdziwy jest {warunek pętli}; jeśli tak to wróć do początku, tj. wykonaj {ciało pętli} i sprawdź {warunek pętli}… i tak w kółko, aż {warunek pętli} przestanie być prawdziwy. Gdy {warunek pętli} przestaje być prawdziwy to wykonanie pętli się kończy.