CodeGym /จาวาบล็อก /สุ่ม /ปรับปรุงสำหรับการวนซ้ำใน Java
John Squirrels
ระดับ
San Francisco

ปรับปรุงสำหรับการวนซ้ำใน Java

เผยแพร่ในกลุ่ม
หากคุณเป็นนักพัฒนา Java คุณอาจเคยเจอสถานการณ์ที่คุณจำเป็นต้องวนซ้ำในอาร์เรย์หรือคอลเลกชัน ในอดีต สิ่งนี้จำเป็นต้องเขียนโค้ดสำเร็จรูปจำนวนมากเพื่อตั้งค่าการวนซ้ำและวนซ้ำองค์ประกอบต่างๆ อย่างไรก็ตาม Java ได้เปิดตัวfor loop ที่ได้รับการปรับปรุง ซึ่งทำให้การวนซ้ำคอลเลกชันและอาร์เรย์ง่ายขึ้นมาก เราจะเรียนรู้เกี่ยวกับ Enhanced for loop ใน Java ในบทความนี้ ซึ่งให้วิธีที่ง่ายและกระชับยิ่งขึ้นในการวนซ้ำอาร์เรย์และคอลเลกชั่น

การปรับปรุง for loop ใน Java คืออะไร?

for- loop ที่ปรับปรุงแล้ว หรือที่เรียกว่า for-each loop มอบวิธีที่กระชับในการวนซ้ำคอลเลกชันหรืออาร์เรย์โดยไม่จำเป็นต้องใช้ตัววนซ้ำที่ชัดเจน ไวยากรณ์ของลูปที่ปรับปรุงแล้วเป็นดังนี้:
for (elementType element : collection) {
    // code block to execute
}
ในรูปแบบนี้elementTypeคือประเภทข้อมูลขององค์ประกอบในคอลเลกชันและองค์ประกอบคือตัวแปรที่แสดงถึงแต่ละองค์ประกอบในคอลเลกชัน คอลเลกชันคือคอลเลกชันที่คุณต้องการทำซ้ำ ลองมาดูตัวอย่างเพื่อดูว่าการปรับปรุงfor loop ทำงาน อย่างไร

ปรับปรุงสำหรับตัวอย่างลูป

สมมติว่าเรามีอาร์เรย์ของจำนวนเต็มที่เราต้องการวนซ้ำและพิมพ์แต่ละองค์ประกอบออกมา เมื่อใช้ for loop ที่ปรับปรุงแล้วเราสามารถทำได้โดยใช้โค้ดเพียงไม่กี่บรรทัด :
public class EnhancedForLoop {
    public static void main(String[] args) {
        int[] numbers = {1, 2, 3, 4, 5};

        for (int number : numbers) {
            System.out.println(number);
        }
    }
}

เอาท์พุท:

1 2 3 4 5
ในตัวอย่างนี้ เราประกาศอาร์เรย์ของจำนวนเต็มที่เรียกว่าตัวเลขและเริ่มต้นด้วยค่าบางค่า จากนั้นเราใช้for loop ที่ปรับปรุงแล้วเพื่อวนซ้ำ อาร์เรย์ ตัวเลขและพิมพ์แต่ละองค์ประกอบ อย่างที่คุณเห็น ไวยากรณ์ของfor loop ที่ปรับปรุงแล้วนั้นง่ายกว่าfor loop แบบดั้งเดิมมาก เราไม่จำเป็นต้องติดตามดัชนีหรือกังวลเกี่ยวกับความยาวของอาร์เรย์ การปรับปรุงfor loop จะดูแลทั้งหมดนี้ให้เรา นอกจากนี้เรายังสามารถใช้for loop ที่ปรับปรุงแล้วเพื่อวนซ้ำคอลเลกชันได้ ลองมาดูตัวอย่างการวนซ้ำArrayList of Strings
// Here is the example of an enhanced for loop to iterate over a collection
import java.util.ArrayList;

public class EnhancedForLoop {
    public static void main(String[] args) {
// use the enhanced for loop to iterate over the `names` ArrayList        ArrayList<String> names = new ArrayList<String>();
        names.add("Alice");
        names.add("Bob");
        names.add("Charlie");

        for (String name : names) {
            System.out.println(name);
        }
    }
}

เอาท์พุท:

อลิซ บ็อบ ชาร์ลี
ในตัวอย่างนี้เราสร้างArrayList of Strings ที่เรียกว่าชื่อและเพิ่มค่าบางค่าเข้าไป จากนั้นเราจะใช้for loop ที่ปรับปรุงแล้วเพื่อวนซ้ำชื่อ ArrayListและพิมพ์แต่ละองค์ประกอบออกมา การปรับปรุงfor loop ไม่เพียงแต่ง่ายต่อการอ่านและเขียนเท่านั้น แต่ยังปลอดภัยยิ่งขึ้นอีกด้วย ช่วยลดโอกาสที่จะเกิดข้อผิดพลาดแบบ off-by-one และทำให้โค้ดกระชับและอ่านง่ายขึ้น

บทสรุป

โดยสรุป Enhanced for loop ใน Java มอบวิธีที่ง่ายกว่า ปลอดภัยกว่า และรัดกุมยิ่งขึ้นในการวนซ้ำอาร์เรย์และคอลเลกชั่น เป็นฟีเจอร์ที่ยอดเยี่ยมที่เปิดตัวใน Java 5 และเป็นสิ่งที่นักพัฒนา Java ทุกคนควรคุ้นเคย ไม่ว่าคุณจะทำงานกับอาร์เรย์หรือคอลเลคชันfor loop ที่ปรับปรุงแล้วเป็นเครื่องมือที่ยอดเยี่ยมที่ควรมีในชุดเครื่องมือ Java ของคุณ
ความคิดเห็น
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION