Anda di halaman 1dari 39

Subscribe to DeepL Pro to translate larger documents.

Visit www.DeepL.com/pro for more information.

1
Yayasan Jawa
6-1
untuk Loop

Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL adalah merek
dagang terdaftar dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan
merek dagang dari pemiliknya masing-masing.

2
Tujuan:
• Pelajaran ini mencakup tujuan-tujuan berikut:
Memahami komponen-komponen perulangan for
standar
-Memahami cara membuat dan menggunakan
perulangan for
-Memahami ruang lingkup variabel
-Memahami teknik debugging
-Menjelaskan bagaimana perulangan tak terbatas
terjadi di Java

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 3
Loop merek dagang dari pemiliknya masing-masing.

3
Misi ke Cincin Saturnus
• Kami akan meluncurkan kapal roket
• Misinya adalah mempelajari cincin Saturnus
• Apakah Anda punya saran mengenai cara
memprogram penghitung waktu mundur?

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 4
Loop merek dagang dari pemiliknya masing-masing.

4
Hitung mundur
• Menghitung mundur dari 10 membutuhkan 10
baris kode
System.out.println("Hitung Mundur untuk
Peluncuran: " );
System.out.println(10);
System.out.println(9);
System.out.println(8);
System.out.println(7);
System.out.println(6);
System.out.println(5);
System.out.println(4);
System.out.println(3);
System.out.println(2);
System.out.println(1);
System.out.println("Ledakan!");

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 5
Loop merek dagang dari pemiliknya masing-masing.

5
Hitung mundur
• Menghitung mundur dari 100 akan membutuhkan
100 baris kode
• Hal itu akan menyakitkan dan membosankan untuk
diprogram.
• Apakah ada cara yang lebih praktis untuk menulis
program ini?
• Dapatkah kode dengan mudah mengakomodasi nilai
awal apa pun?

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 6
Loop merek dagang dari pemiliknya masing-masing.

6
Hitung mundur
System.out.println("Countdown to Launch: ");
System.out.println(100);
System.out.println(99);
System.out.println(98);
System.out.println(97);
System.out.println(96);
System.out.println(95);
...
...
...
...
...
...
System.out.println(2);
System.out.println(1);
System.out.println("Ledakan!");

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 7
Loop merek dagang dari pemiliknya masing-masing.

7
Dapatkah Variabel Membantu?
• Variabel agak membantu
• Tetapi kita masih harus menyalin dan menempelkan
baris kode yang sama sampai 0 cetakan
System.out.println("Hitung Mundur untuk Peluncuran: " );

int i = 10;
System.out.println(i);
i -;
System.out.println(i);
i -;
System.out.println(i);
i -;
...
System.out.println("Ledakan!");

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 8
Loop merek dagang dari pemiliknya masing-masing.

8
Kode berulang
• Dapatkah kita membuat baris kode yang sama
mengulang beberapa kali?
• Baris 7-10 menunjukkan blok kode yang ingin kita
ulangi
• Ingatlah sifat program yang terdiri dari baris demi
baris:
-Saat program mencapai baris 10 ...
5 int i = 10;
-Kita
6 ingin mengulang kembali ke baris 7
7 {
8 System.out.println(i);
9 i--;
10 }

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 9
Loop merek dagang dari pemiliknya masing-masing.

9
Laporan Perulangan
• Pernyataan perulangan digunakan untuk
mengulang baris kode.
• Java menyediakan tiga jenis perulangan:
-untuk
-sementara
-dilakukan-sementara

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 10
Loop merek dagang dari pemiliknya masing-masing.

10
Perilaku Berulang
while (!areWeThereYet) {
Apakah
kita
membaca buku;
di sana
berdebat dengan saudara
belum?
kandung;
bertanya, "Apakah kita
sudah sampai?";

Woohoo!;
Keluar dari mobil;

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 11
Loop merek dagang dari pemiliknya masing-masing.

Kebutuhan umum dalam sebuah program adalah mengulang sejumlah pernyataan. Biasanya,
kode terus mengulang pernyataan sampai ada perubahan. Kemudian kode akan keluar dari
perulangan dan melanjutkan dengan pernyataan berikutnya.
Contoh pseudocode menunjukkan perulangan sementara yang mengulang hingga boolean
areWeThereYet bernilai benar.

11
Loops
• Loop digunakan dalam program untuk eksekusi
berulang dari satu atau lebih pernyataan sampai
kondisi penghentian tercapai
-Sampai ekspresi salah
• atau
-Untuk jumlah waktu tertentu:
• Saya ingin mencetak angka dari 1 hingga 10
• Saya ingin menghitung jumlah angka dalam rentang tertentu
• Perulangan for mengeksekusi sejumlah waktu yang
diketahui
-untuk loop juga disebut loop pasti

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 12
Loop merek dagang dari pemiliknya masing-masing.

Dalam pemrograman, ada kalanya Anda ingin bekerja dengan beberapa input, tetapi Anda ingin
menjalankan logika yang sama untuk setiap item input.
Perulangan dimulai dari awal sepotong kode, mengeksekusi logika, lalu kembali ke awal
perulangan dengan input baru, siap untuk mengeksekusi kode lagi.

12
Apa yang Kami Ketahui
• Dalam skenario Hitung Mundur, inilah yang kita
ketahui:
Apa yang Kami Ketahui Nama Teknis Kode
Ketika loop dimulai ... Ekspresi Inisialisasi int i = 10;
Lanjutkan perulangan jika Ekspresi Kondisi i >= 0;
...
Setelah setiap putaran ... Perbarui Ekspresi i--;
Kode untuk diulang Pernyataan Kode System.out.println(i);

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 13
Loop merek dagang dari pemiliknya masing-masing.

13
untuk Ikhtisar Loop
• Sintaksis: Header
for(inisialisasi; kondisi; update){
Pernyataan kode
Tubu
Pernyataan kode h
}//akhir untuk
• Ekspresi inisialisasi menginisialisasi loop, yaitu
dieksekusi hanya sekali, saat perulangan dimulai
• Ketika ekspresi kondisi bernilai salah, perulangan berakhir
• Ekspresi pembaruan dipanggil setelah setiap iterasi
melalui perulangan, ekspresi ini dapat menambah
atau mengurangi nilai
• Setiap ekspresi harus dipisahkan dengan tanda titik koma
(;)
JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 14
Loop merek dagang dari pemiliknya masing-masing.

14
Ekspresi Inisialisasi
• Dilakukan sekali saat perulangan dimulai
• Memberi tahu kompiler variabel apa (disebut
penghitung perulangan) yang digunakan dalam
perulangan
Dapat dimulai dari nilai
•System.out.println("Hitung berapa pun, tidak hanya 10
Mundur untuk Peluncuran: " );

for(int i = 10; i >= 0; i--) {


System.out.println(i);
}//akhir untuk

System.out.println("Ledakan!");

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 15
Loop merek dagang dari pemiliknya masing-masing.

15
Ekspresi Kondisi
• Perulangan terus berlanjut selama ekspresi boolean ini
benar
• Ini menggunakan operator perbandingan:
-(==, !=, <, >, <=, >=)

System.out.println("Hitung Mundur untuk Peluncuran: " );

for(int i = 10; i >= 0; i--) {


System.out.println(i);
}//akhir untuk

System.out.println("Ledakan!");

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 16
Loop merek dagang dari pemiliknya masing-masing.

16
Perbarui Ekspresi
• Pernyataan ini dieksekusi setelah setiap iterasi dari
perulangan for
• Ini digunakan untuk memperbarui penghitung loop

System.out.println("Hitung Mundur untuk Peluncuran: " );

for(int i = 10; i >= 0; i--) {


System.out.println(i);
}//akhir untuk

System.out.println("Ledakan!");

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 17
Loop merek dagang dari pemiliknya masing-masing.

17
Latihan 1, Bagian 1
• Buat proyek baru dan tambahkan Countdown.java
file ke proyek
• Tetapkan breakpoint di Countdown.java dan
amati...
-Bagaimana perulangan for memengaruhi eksekusi kode
-Bagaimana nilai i berubah

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 18
Loop merek dagang dari pemiliknya masing-masing.

18
Latihan 1, Bagian 2
• Dapatkah Anda memodifikasi kode untuk
menghitung dari 0 hingga 5?
• Dapatkah Anda memodifikasi kode untuk
menghitung semua angka genap dari 0 hingga 20?

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 19
Loop merek dagang dari pemiliknya masing-masing.

19
Apakah Saya Membutuhkan
Ekspresi Pembaruan?
Bagaimana
•for(int i = 10;jika saya
i >= 0; menulis
){
perulangan saya seperti ini?
System.out.println(i);
i -;
}//akhir untuk

• Ini juga berhasil!


• Tetapi Anda mungkin tidak ingin membuat kode
dengan cara ini, karena loop Anda mungkin menjadi
lebih rumit

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 20
Loop merek dagang dari pemiliknya masing-masing.

20
Menghilangkan Ekspresi dalam Perulangan
for
• Tiap ekspresi dalam header bersifat opsional
• Tetapi, ada risiko apabila Anda menghilangkan
suatu ekspresi:
-Tidak ada inisialisasi:
• Tidak ada inisialisasi yang dilakukan
• Mungkin tidak ada penghitung loop
-Tanpa syarat:
• Kondisi perulangan selalu dianggap benar
• Perulangan adalah perulangan tak terbatas
-Tidak ada pembaruan:
• Tidak ada operasi kenaikan yang dilakukan
• Penghitung putaran mempertahankan nilai yang sama
JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 21
Loop merek dagang dari pemiliknya masing-masing.

21
Menghilangkan Semua Ekspresi dalam
Perulangan for
• Perhatikan kode berikut ini:
-Ketiga ekspresi dalam perulangan for dapat
dihilangkan
for(;;){
-Loop berulang tanpa batas
System.out.println("Selamat datang di Java");
}//akhir untuk

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 22
Loop merek dagang dari pemiliknya masing-masing.

22
Latihan 2
• Tambahkan file InfiniteLoop.java ke proyek
yang Anda buat untuk latihan 1
• Jalankan InfiniteLoop.java dan amati
hasilnya
• Modifikasi perulangan for di
InfiniteLoop.java menjadi
mencetak "Halo" lima kali

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 23
Loop merek dagang dari pemiliknya masing-masing.

23
Beberapa pernyataan di dalam badan
perulangan
• Untuk mengeksekusi beberapa pernyataan di
dalam tubuh ...
• Lampirkan pernyataan di dalam sepasang tanda
kurung
for(int i = kurawal
1; i <= 5; i++)
System.out.println(i);
Jika tidak, hanya pernyataan pertama dalam
•System.out.println("baris
tubuh yang dieksekusi
kedua");
• Keluaran:1
2
3
4
5
baris kedua
JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk Loop merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 24
merek dagang dari pemiliknya masing-masing.

24
Satu Penggunaan Perulangan for
• Perulangan for menyediakan cara yang ringkas untuk
mengulang berbagai nilai
• Pengulangan tanpa perulangan for:
//Mencetak kuadrat dari 1 sampai 5
System.out.println("1 kuadrat = " + 1 * 1);
System.out.println("2 kuadrat = " + 2 * 2);
System.out.println("3 kuadrat = " + 3 * 3);
System.out.println("4 kuadrat = " + 4 * 4);
System.out.println("5 kuadrat = " + 5 * 5);

• Pengulangan dengan
perulangan
for(int i = 1; ifor:
<= 5; i++){
System.out.println("i kuadrat = " + i * i);
}//akhir untuk

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 25
Loop merek dagang dari pemiliknya masing-masing.

25
i Adalah Penghitung Lingkaran
• Setiap contoh yang telah kita lihat bergantung pada
penghitung
for(int i = 1; iperulangan
<= 5; i++){
System.out.println("i kuadrat = " + i * i);
}//akhir untuk

• Aku bisa:
-Dicetak
-Apakah nilainya berubah
-Digunakan dalam
perhitungan
• Ini sangat bagus untuk:
-Menghitung
-Menghitung nilai dengan
cepat JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 26
untuk
Loop merek dagang dari pemiliknya masing-masing.

26
Memahami Ruang Lingkup Variabel
• Tetapi i hanya ada di dalam perulangan for
-Ini dikenal sebagai ruang lingkup i
-i tidak lagi ada ketika perulangan for diakhiri
-Jika i digunakan untuk menghitung nilai, kita tidak akan
pernah mendapatkan nilai tersebut
dari perulangan for
• Apakah Anda mengamati saya menghilang ketika Anda
melakukan debug
for(int i = 1; i <= 5; i++){
Countdown.java?
System.out.println("i kuadrat = " + i * i);
}//akhir untuk

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 27
Loop merek dagang dari pemiliknya masing-masing.

27
Cakupan Variabel: Contoh
• Variabel i yang dideklarasikan dalam perulangan for
adalah variabel lokal dan tidak dapat diakses di luar
perulangan
•1 Kesalahan kompiler dihasilkan pada baris 8
public class VariableScopeDemo {
2
3 public static void main(String args[]){
4
5 for(int i = 0; i <= i++ ){
6 5; System.out.println("i: "+i);
7 }//akhir untuk
8 System.out.println("i: " +i);
9 }//end method main
10 }//end class VariableScopeDemo

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 28
Loop merek dagang dari pemiliknya masing-masing.

28
Cakupan Variabel
• Variabel tidak boleh ada sebelum atau di luar blok
kodenya
public class VariableScopeDemoClass{
int x = 0;

public static void main(String args[]){


int i = 1;

for(int j = 2; j <= 5; j++ ){


System.out.println(j);
x i j int k = 3;
System.out.println(x +i +j +k);
}
k
}
}

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 29
Loop merek dagang dari pemiliknya masing-masing.

29
Penggunaan Lain untuk Loop
• Misalkan Anda perlu mencari jumlah dari empat
angka
import java.util.Scanner;
public class Add4Integers {
public static void main(String[] args){
Scanner in = new Scanner(System.in);
System.out.println("Program ini menambahkan empat angka.");
System.out.println("Ketik setiap angka, diikuti dengan
Enter."); int n1 = in.nextInt();
int n2 = in.nextInt();
int n3 = in.nextInt();
int n4 = in.nextInt();
int total = n1 + n2 + n3 + n4;
System.out.println("Totalnya adalah " + total +
".");
}//end method main
}//end class Add4Integers

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 30
Loop merek dagang dari pemiliknya masing-masing.

30
Penggunaan Lain - untuk Loop
• Pendekatan ini tidak praktis untuk diprogram jika
Anda ingin menambahkan 100 nilai
int n1 = in.nextInt();
int n2 = in.nextInt();
int n3 = in.nextInt();
int n4 = in.nextInt();
...
int n100 = in.nextInt();
int total = n1 + n2 + n3 + n4 +... + n100;

• Dapatkah perulangan for membuat program ini


menjadi lebih pendek?
• Dapatkah perulangan for membantu menemukan
jumlah dari sejumlah variabel bilangan bulat?
JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 31
Loop merek dagang dari pemiliknya masing-masing.

31
Menggunakan Cakupan dengan
untuk Perulangan
• Hal ini dapat diatasi dengan
menggunakan
import ...
java.util.Scanner;
public class PracticeCode {
-Perulangan
public static voidfor dengan variabel
main(String[] args){ dengan
cakupan berbeda
Pemindai in = new Pemindai(System.in);
int N = 100;
int total = 0;
System.out.println("Program ini menambahkan angka " + N
+ "."); for(int i = 0; i < N; i++){
System.out.println(("Masukkan angka
berikutnya:"); int nilai = in.nextInt();
total += nilai;
}//akhir untuk
System.out.println("Jumlahnya adalah " + jumlah + ".");
}//end method main

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 32
Loop merek dagang dari pemiliknya masing-masing.

32
Cakup
an
import java.util.Scanner;
public class PracticeCode {
public static void main(String[] args){ Pemindai
in = new Pemindai(System.in); int N =
100;
int total = 0;
N System.out.println("Program ini menambahkan angka " + N +
total for(int
"."); i = 0; i < N; i++){
System.out.println(("Masukkan angka
berikutnya:");
i int nilai = in.nextInt(); total nilai
+= nilai;
}//akhir untuk
System.out.println("Jumlahnya adalah " +
jumlah + ".");
}//end method main

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 33
Loop merek dagang dari pemiliknya masing-masing.

33
Latihan 3
• Tambahkan file ScopeTest.java ke proyek
yang telah Anda buat untuk latihan 1
• ScopeTest.java rusak
• Bisakah Anda memperbaikinya?
• Anda akan mendapatkan keluaran berikut ini:
-64 32 16 8 4 2 1
-0 1 2 3 4 5
-5 4 3 2 1 0
-2 4 8 16 32 64

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 34
Loop merek dagang dari pemiliknya masing-masing.

34
Variabel yang Sudah Ditetapkan
• i dibuat sebelum perulangan for
• Aku yang lain tidak bisa ada dalam lingkup
yang sama
• Salah satustatic
public variabel inimain(String[]
void membutuhkan nama
args) {
yang berbeda
int i = 0;

for(int i = 64; i >0; i=i/2 ){


i iSystem.out.print(i +" ");
}

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 35
Loop merek dagang dari pemiliknya masing-masing.

35
Di luar Cakupan
• j tidak dapat berada di luar lingkup di mana ia dibuat
• J yang berbeda dapat dibuat jika cakupannya tidak
tumpang tindih
public static void main(String[] args) {
for(int j = 0; j<=5; j++){
j System.out.print(j +" ");
}

for(int j = 5; j>=0; j--


j
){ System.out.print(j +" ");
}

for(int k = 2; k<=64; k=k*2){

}
k System.out.print(j +" ");

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 36
Loop merek dagang dari pemiliknya masing-masing.

36
Apakah Saya Membutuhkan Ekspresi
Inisialisasi?
Bagaimana
•int i = 10; jika saya menulis perulangan
sayai seperti
for(; ini?
>= 0; i--){
System.out.println(i);
}//akhir untuk

• Ini juga berhasil!


-Tetapi i berada di luar cakupan perulangan for
Jika i hanya dimaksudkan sebagai penghitung perulangan,
variabel tersebut membuang-buang memori
-Jaga agar cakupan tetap sempit (sekecil mungkin)
-Variabel stray memperumit kode dan meningkatkan potensi
bug

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 37
Loop merek dagang dari pemiliknya masing-masing.

37
Ringkasan
• Dalam pelajaran ini, Anda seharusnya sudah
mempelajari caranya:
Memahami komponen-komponen perulangan for
standar
-Memahami cara membuat dan menggunakan
perulangan for
-Memahami ruang lingkup variabel
-Memahami teknik debugging
-Menjelaskan bagaimana perulangan tak terbatas
terjadi di Java

JFo 6-1 Hak Cipta © 2022, Oracle dan/atau afiliasinya. Oracle, Java, dan MySQL telah terdaftar
untuk merek dagang dari Oracle dan/atau afiliasinya. Nama-nama lain mungkin merupakan 38
Loop merek dagang dari pemiliknya masing-masing.

38
39

Anda mungkin juga menyukai