Skip to Content

การวนซ้ำ (Loops) ใน Java

วันนี้เรามาเรียนรู้เกี่ยวกับการวนซ้ำ หรือ Loops ใน Java กัน การวนซ้ำจะช่วยให้เราทำงานซ้ำๆ ได้อย่างมีประสิทธิภาพ โดยไม่ต้องเขียนโค้ดซ้ำหลายๆ ครั้ง

การวนซ้ำคืออะไร?

การวนซ้ำเป็นเหมือนการบอกคอมพิวเตอร์ให้ทำอะไรซ้ำๆ จนกว่าจะถึงเงื่อนไขที่เรากำหนด

เปรียบเทียบกับชีวิตประจำวัน:

  • การล้างจาน: คุณล้างจานทีละใบจนกว่าจะหมด
  • การออกกำลังกาย: คุณวิดพื้น 20 ครั้ง

ใน Java เรามีการวนซ้ำ 3 แบบหลักๆ:

  1. for loop
  2. while loop
  3. do-while loop

มาดูแต่ละแบบกันเลย!

1. for loop

for loop ใช้เมื่อเรารู้จำนวนครั้งที่ต้องการทำซ้ำแน่นอน

โครงสร้าง:

for (ค่าเริ่มต้น; เงื่อนไข; การเปลี่ยนแปลง) { // โค้ดที่ต้องการทำซ้ำ }

ตัวอย่าง: นับเลข 1 ถึง 5

for (int i = 1; i <= 5; i++) { System.out.println("นับครั้งที่ " + i); }

ผลลัพธ์:

นับครั้งที่ 1 นับครั้งที่ 2 นับครั้งที่ 3 นับครั้งที่ 4 นับครั้งที่ 5

2. while loop

while loop ใช้เมื่อเราไม่รู้จำนวนครั้งที่แน่นอน แต่รู้เงื่อนไขที่ต้องการให้หยุด

โครงสร้าง:

while (เงื่อนไข) { // โค้ดที่ต้องการทำซ้ำ }

ตัวอย่าง: ทายตัวเลขให้ถูก

import java.util.Scanner; public class เกมทายตัวเลข { public static void main(String[] args) { int เลขที่ถูก = 7; int เลขที่ทาย = 0; Scanner scanner = new Scanner(System.in); while (เลขที่ทาย != เลขที่ถูก) { System.out.print("ทายตัวเลข (1-10): "); เลขที่ทาย = scanner.nextInt(); if (เลขที่ทาย < เลขที่ถูก) { System.out.println("น้อยไป ลองใหม่!"); } else if (เลขที่ทาย > เลขที่ถูก) { System.out.println("มากไป ลองใหม่!"); } } System.out.println("ยินดีด้วย! คุณทายถูกแล้ว"); scanner.close(); } }

3. do-while loop

do-while loop คล้ายกับ while loop แต่จะทำงานอย่างน้อย 1 ครั้งเสมอ แม้ว่าเงื่อนไขจะเป็นเท็จตั้งแต่แรก

โครงสร้าง:

do { // โค้ดที่ต้องการทำซ้ำ } while (เงื่อนไข);

ตัวอย่าง: ให้ผู้ใช้ใส่ตัวเลขที่มากกว่า 0

import java.util.Scanner; public class รับตัวเลขบวก { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int ตัวเลข; do { System.out.print("กรุณาใส่ตัวเลขที่มากกว่า 0: "); ตัวเลข = scanner.nextInt(); } while (ตัวเลข <= 0); System.out.println("ขอบคุณ! คุณใส่ตัวเลข: " + ตัวเลข); scanner.close(); } }

เคล็ดลับการใช้ Loops

  1. ระวัง infinite loop (การวนซ้ำไม่รู้จบ) ตรวจสอบให้แน่ใจว่ามีเงื่อนไขที่ทำให้ loop หยุดได้
  2. เลือกใช้ loop ให้เหมาะกับงาน:
  • รู้จำนวนรอบแน่นอน? ใช้ for
  • ไม่รู้จำนวนรอบ แต่รู้เงื่อนไขหยุด? ใช้ while
  • ต้องการทำงานอย่างน้อย 1 ครั้ง? ใช้ do-while
  1. ใช้ break เพื่อออกจาก loop ก่อนเวลา และ continue เพื่อข้ามการทำงานในรอบนั้นๆ

มาลองทำโจทย์ง่ายๆ กัน!

ลองเขียนโปรแกรมที่พิมพ์ตารางสูตรคูณ แม่ 2 ถึง 12:

public class ตารางสูตรคูณ { public static void main(String[] args) { for (int i = 1; i <= 12; i++) { System.out.println("2 x " + i + " = " + (2 * i)); } } }

สรุป

การวนซ้ำ (Loops) เป็นเครื่องมือที่ทรงพลังในการทำให้โปรแกรมของเราทำงานซ้ำๆ ได้อย่างมีประสิทธิภาพ ช่วยให้เราเขียนโค้ดได้สั้นลง และจัดการกับงานที่ต้องทำซ้ำหลายๆ ครั้งได้ง่ายขึ้น

ปรับปรุงล่าสุด