Untuk setiap gelung telah diperkenalkan di Java bermula dari JDK 5. Ia bertujuan untuk melelang secara berurutan melalui semua elemen Koleksi atau tatasusunan. Ia juga terdapat dalam bahasa lain seperti C#, di mana ia menggunakan kata kunci untuk setiap satu. Walau bagaimanapun, Java menggunakan kata kunci 'untuk' sahaja untuk melaksanakan gelung bagi setiap, tidak seperti C#, tetapi sintaksnya berbeza daripada gelung konvensional. Gelung untuk-setiap ini juga dikenali sebagai gelung untuk dipertingkat dalam Java.
Mulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
Sintaks:
for(type iter_var : Collection) statement_block
Penjelasan bagi setiap istilah yang digunakan di atas adalah seperti berikut:
Adalah penting untuk ambil perhatian bahawa gelung untuk-setiap mengakses elemen koleksi/tatasusunan secara berurutan, di mana ia menyimpan nilai setiap elemen dalam pembolehubah lelaran. Berikut ialah rajah alir bagi setiap gelung.
Seperti yang anda perhatikan, terdapat perbezaan halus tertentu antara untuk gelung dan untuk setiap gelung. Untuk gelung memerlukan bilangan lelaran untuk ditentukan terlebih dahulu. Walau bagaimanapun, ini tidak berlaku dengan untuk setiap gelung, kerana gelung itu berulang daripada elemen pertama hingga elemen terakhir Koleksi/tatasusunan dan tidak memerlukan bilangan lelaran untuk ditentukan.
Perkara penting yang perlu diingat ialah jenis yang dinyatakan dalam setiap gelung mesti sepadan dengan jenis elemen dalam koleksi kerana jika tidak, akan ada isu keserasian.
Berikut ialah contoh yang berbeza:
Mari kita cari purata umur sekumpulan orang yang menggunakan gelung:
Kod:
public class Main { public static void main(String[] args) { int ages[] = {15, 18, 16, 17, 14, 12, 13, 20, 22, 25}; int sum = 0; System.out.print("Ages of the group are : "); for (int i = 0; i < 10 ; i++) { System.out.print(ages[i]+" "); sum += ages[i]; } System.out.println("\n Average age of the group = " + (sum/10)); } }
Output:
Untuk mencari purata umur sekumpulan orang menggunakan untuk setiap gelung:
Kod:
public class Main { public static void main(String[] args) { int ages[] = {15, 18, 16, 17, 14, 12, 13, 20, 22, 25}; int sum = 0; System.out.print("Ages of the group are : "); for (int x : ages) { System.out.print(x+" "); sum += x; } System.out.println("\n Average age of the group = " + (sum/10)); } }
Output:
Output adalah sama menggunakan kedua-dua gelung, seperti yang dilihat daripada rajah di atas.
Adalah mungkin untuk mengurangkan bilangan lelaran bagi setiap gelung menggunakan pernyataan putus. Contohnya, jika kita ingin mencari jumlah hanya 5 elemen pertama, kita boleh menggunakan pernyataan pecah seperti berikut:
Kod:
public class Main { public static void main(String[] args) { int ages[] = {15, 18, 16, 17, 14, 12, 13, 20, 22, 25}; int ctr = 0, sum = 0; System.out.print("Ages of the group are : "); for (int x : ages) { System.out.print(x+" "); } for (int x : ages) { if (ctr == 5) break; sum += x; ctr += 1; } System.out.println("\nSum of age of first 5 people of the group = " + sum); } }
Output:
Dalam gelung untuk setiap yang dinyatakan di atas, x ialah pembolehubah lelaran yang menyimpan satu elemen tatasusunan setiap lelaran, yang berubah dalam lelaran seterusnya. Dalam lelaran pertama, x menyimpan elemen pertama tatasusunan dan elemen terakhir elemen lelaran terakhir. Tidak seperti untuk gelung, kami mengakses elemen tatasusunan menggunakan indeks, untuk setiap gelung menggunakan pembolehubah lelaran untuk mengakses elemen.
Penjagaan perlu diambil untuk menggunakan setiap gelung kerana pembolehubah lelaran menyimpan nilai elemen tatasusunan buat sementara waktu kerana ia adalah "baca sahaja", dan menukar nilainya tidak mengubah suai tatasusunan asal. Ini bercanggah dengan gelung apabila menukar elemen mengubah suai tatasusunan asal.
Mari kita pertimbangkan contoh di mana kita menambah 5 pada setiap elemen tatasusunan. Kita boleh melihat perbezaan dalam output dalam kod contoh berikut:
Gelung for dengan keadaan berbeza diterangkan di bawah:
Kod:
public class Main { public static void main(String[] args) { int ages[] = {15, 18, 16, 17, 14, 12, 13, 20, 22, 25}; System.out.print("Elements of the array are : "); for (int i = 0; i < 10; i++) { System.out.print(ages[i]+" "); ages[i]+= 5; } System.out.print("\nNew elements of the array are : "); for (int i = 0; i < 10; i++) { System.out.print(ages[i]+" "); } } }
Output:
Output bagi gelung untuk menunjukkan pengemaskinian tatasusunan asal
Gelung for dengan keadaan berbeza diterangkan di bawah:
Kod:
public class Main { public static void main(String[] args) { int ages[] = {15, 18, 16, 17, 14, 12, 13, 20, 22, 25}; System.out.print("Elements of the array are : "); for (int x : ages) { System.out.print(x+" "); x += 5; } System.out.print("\nNew elements of the array are : "); for (int x : ages) { System.out.print(x+" "); } } }
Output:
Output bagi setiap gelung tidak menunjukkan pengemaskinian tatasusunan asal
Atas ialah kandungan terperinci Untuk-Setiap gelung di Jawa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!