Dalam tutorial ini, kita akan belajar bagaimana menggunakan while dan do while loop di Java dengan bantuan contoh.
Dalam pemrograman komputer, loop digunakan untuk mengulang satu blok kode. Misalnya, jika Anda ingin menampilkan pesan 100 kali, maka Anda dapat menggunakan loop. Itu hanya contoh sederhana; Anda dapat mencapai lebih banyak dengan loop.
Di tutorial sebelumnya, Anda belajar tentang Java for loop. Di sini, Anda akan belajar tentang whiledan do… whileloop.
Java sementara loop
whileLoop Java digunakan untuk menjalankan kode tertentu sampai kondisi tertentu terpenuhi. Sintaks dari whileloop adalah:
while (testExpression) ( // body of loop )
Sini,
- Sebuah
whileloop mengevaluasi textExpression di dalam tanda kurung(). - Jika textExpression mengevaluasi
true, kode di dalamwhileloop akan dieksekusi. - The textExpression dievaluasi lagi.
- Proses ini berlanjut sampai textExpression adalah
false. - Saat textExpression terevaluasi
false, loop berhenti.
Untuk mempelajari lebih lanjut tentang kondisi tersebut, kunjungi operator relasional dan logika Java.
Diagram alir while loop
Diagram alir Java while loop
Contoh 1: Menampilkan Angka dari 1 hingga 5
// Program to display numbers from 1 to 5 class Main ( public static void main(String() args) ( // declare variables int i = 1, n = 5; // while loop from 1 to 5 while(i <= n) ( System.out.println(i); i++; ) ) )
Keluaran
1 2 3 4 5
Berikut adalah cara kerja program ini.
| Pengulangan | Variabel | Kondisi: i <= n | Tindakan |
|---|---|---|---|
| 1st | i = 1n = 5 | true | 1 dicetak. saya meningkat menjadi 2 . |
| 2nd | i = 2n = 5 | true | 2 dicetak. saya meningkat menjadi 3 . |
| 3 | i = 3n = 5 | true | 3 dicetak. saya meningkat menjadi 4 . |
| 4th | i = 4n = 5 | true | 4 dicetak. saya meningkat menjadi 5 . |
| 5 | i = 5n = 5 | true | 5 dicetak. saya meningkat menjadi 6 . |
| 6 | i = 6n = 5 | false | Loop dihentikan |
Contoh 2: Hanya Jumlah Bilangan Positif
// Java program to find the sum of positive numbers import java.util.Scanner; class Main ( public static void main(String() args) ( int sum = 0; // create an object of Scanner class Scanner input = new Scanner(System.in); // take integer input from the user System.out.println("Enter a number"); int number = input.nextInt(); // while loop continues // until entered number is positive while (number>= 0) ( // add only positive numbers sum += number; System.out.println("Enter a number"); number = input.nextInt(); ) System.out.println("Sum = " + sum); input.close(); ) )
Keluaran
Masukkan angka 25 Masukkan angka 9 Masukkan angka 5 Masukkan angka -3 Jumlah = 39
Dalam program di atas, kami telah menggunakan kelas Scanner untuk mengambil masukan dari pengguna. Di sini, nextInt()mengambil input integer dari pengguna.
The whileLoop berlanjut sampai pengguna memasukkan angka negatif. Selama setiap iterasi, angka yang dimasukkan oleh pengguna ditambahkan ke sumvariabel.
Saat pengguna memasukkan angka negatif, loop berakhir. Akhirnya, jumlah total ditampilkan.
Java do… while loop
The do… whileloop mirip dengan sementara loop. Namun, badan do… whileperulangan dijalankan satu kali sebelum ekspresi pengujian diperiksa. Sebagai contoh,
do ( // body of loop ) while(textExpression)
Sini,
- Badan loop dieksekusi pada awalnya. Kemudian textExpression dievaluasi.
- Jika textExpression dievaluasi ke
true, badan loop di dalamdopernyataan tersebut dijalankan lagi. - The textExpression dievaluasi sekali lagi.
- Jika textExpression dievaluasi ke
true, badan loop di dalamdopernyataan tersebut dijalankan lagi. - Proses ini berlanjut sampai textExpression mengevaluasi ke
false. Kemudian loop berhenti.
Diagram alir do… while loop
Flowchart Java lakukan while loop
Mari kita lihat cara kerja do… whileloop.
Contoh 3: Menampilkan Angka dari 1 hingga 5
// Java Program to display numbers from 1 to 5 import java.util.Scanner; // Program to find the sum of natural numbers from 1 to 100. class Main ( public static void main(String() args) ( int i = 1, n = 5; // do… while loop from 1 to 5 do ( System.out.println(i); i++; ) while(i <= n); ) )
Keluaran
1 2 3 4 5
Berikut adalah cara kerja program ini.
| Pengulangan | Variabel | Kondisi: i <= n | Tindakan |
|---|---|---|---|
i = 1n = 5 | tidak diperiksa | 1 dicetak. saya meningkat menjadi 2 . |
|
| 1st | i = 2n = 5 | true | 2 dicetak. saya meningkat menjadi 3 . |
| 2nd | i = 3n = 5 | true | 3 dicetak. saya meningkat menjadi 4 . |
| 3 | i = 4n = 5 | true | 4 dicetak. saya meningkat menjadi 5 . |
| 4th | i = 5n = 5 | true | 6 dicetak. saya meningkat menjadi 6 . |
| 5 | i = 6n = 5 | false | Loop dihentikan |
Contoh 4: Jumlah Bilangan Positif
// Java program to find the sum of positive numbers import java.util.Scanner; class Main ( public static void main(String() args) ( int sum = 0; int number = 0; // create an object of Scanner class Scanner input = new Scanner(System.in); // do… while loop continues // until entered number is positive do ( // add only positive numbers sum += number; System.out.println("Enter a number"); number = input.nextInt(); ) while(number>= 0); System.out.println("Sum = " + sum); input.close(); ) )
Keluaran 1
Masukkan angka 25 Masukkan angka 9 Masukkan angka 5 Masukkan angka -3 Jumlah = 39
Here, the user enters a positive number, that number is added to the sum variable. And this process continues until the number is negative. When the number is negative, the loop terminates and displays the sum without adding the negative number.
Output 2
Enter a number -8 Sum is 0
Here, the user enters a negative number. The test condition will be false but the code inside of the loop executes once.
Infinite while loop
If the condition of a loop is always true, the loop runs for infinite times (until the memory is full). For example,
// infinite while loop while(true)( // body of loop )
Here is an example of an infinite do… while loop.
// infinite do… while loop int count = 1; do ( // body of loop ) while(count == 1)
In the above programs, the textExpression is always true. Hence, the loop body will run for infinite times.
for and while loops
The forLoop digunakan ketika jumlah iterasi diketahui. Sebagai contoh,
for (let i = 1; i <=5; ++i) ( // body of loop )
Dan whiledan do… whileloop umumnya digunakan ketika jumlah iterasi tidak diketahui. Sebagai contoh,
while (condition) ( // body of loop )








