บทความนี้แนะนำอินเทอร์เฟซและคลาสที่มีอยู่ในกรอบการรวบรวม Java ในวิธีโดยรวมแล้วสรุปความรู้พื้นฐานและประเด็นสำคัญในกรอบการรวบรวมและดำเนินการวิเคราะห์อย่างง่ายพร้อมตัวอย่าง เมื่อเราใส่วัตถุลงในคอลเลกชันระบบจะปฏิบัติต่อองค์ประกอบการรวบรวมทั้งหมดเป็นอินสแตนซ์ของคลาสวัตถุ ตั้งแต่ JDK1.5 สถานะนี้ได้รับการปรับปรุง: ทั่วไปสามารถใช้เพื่อ จำกัด ประเภทขององค์ประกอบในคอลเลกชันและให้คอลเลกชันจดจำประเภทขององค์ประกอบการรวบรวมทั้งหมด
1. สรุป
คลาสคอลเลกชันทั้งหมดอยู่ภายใต้แพ็คเกจ Java.util วัตถุเท่านั้นที่สามารถบันทึกได้ในคอลเลกชัน (บันทึกตัวแปรอ้างอิงของวัตถุ) (อาร์เรย์สามารถบันทึกข้อมูลและวัตถุพื้นฐานทั้งสองประเภท)
เมื่อเราใส่วัตถุลงในคอลเลกชันระบบจะปฏิบัติต่อองค์ประกอบการรวบรวมทั้งหมดเป็นอินสแตนซ์ของคลาสวัตถุ ตั้งแต่ JDK1.5 สถานะนี้ได้รับการปรับปรุง: ทั่วไปสามารถใช้เพื่อ จำกัด ประเภทขององค์ประกอบในคอลเลกชันและให้คอลเลกชันจดจำประเภทขององค์ประกอบการรวบรวมทั้งหมด (ดูเนื้อหาของทั่วไปเฉพาะ)
คลาสคอลเลกชันของ Java นั้นส่วนใหญ่มาจากสองอินเทอร์เฟซ: คอลเลกชันและแผนที่คอลเลกชันและแผนที่เป็นอินเทอร์เฟซรูทของเฟรมเวิร์กคอลเลกชัน Java และอินเทอร์เฟซทั้งสองนี้รวมถึงอินเทอร์เฟซหรือคลาสการใช้งานบางส่วน อินเตอร์เฟสชุดและรายการเป็นสองอินเตอร์เฟซย่อยที่ได้จากอินเตอร์เฟสคอลเลกชัน คิวเป็นการใช้คิวที่จัดทำโดย Java คล้ายกับรายการ
คลาสการใช้งานแผนที่ใช้เพื่อบันทึกข้อมูลด้วยความสัมพันธ์การแมป (ค่าคีย์) SET, LIST และ MAP ถือได้ว่าเป็นคอลเลกชันสามประเภท คอลเลกชันรายการได้รับการสั่งซื้อคอลเลกชันองค์ประกอบในคอลเลกชันสามารถทำซ้ำได้และองค์ประกอบในคอลเลกชันสามารถเข้าถึงได้ตามดัชนีขององค์ประกอบ ชุดคอลเลกชันเป็นชุดที่ไม่มีการเรียงลำดับองค์ประกอบในชุดไม่สามารถทำซ้ำได้และองค์ประกอบในชุดสามารถเข้าถึงได้ตามองค์ประกอบเท่านั้น (ซึ่งเป็นเหตุผลว่าทำไมองค์ประกอบในชุดไม่สามารถทำซ้ำได้)
องค์ประกอบของรูปแบบของคู่คีย์-ค่าถูกเก็บไว้ในคอลเลกชันแผนที่ เมื่อเข้าถึงค่าของมันสามารถเข้าถึงได้ตามคีย์ของแต่ละองค์ประกอบเท่านั้น
สำหรับชุดสามชุดรายการและแผนที่คลาสการใช้งานที่ใช้กันมากที่สุดคือ Hashset, ArrayList และ HashMap (คลาสการรวบรวมการควบคุมที่เกิดขึ้นพร้อมกันศึกษาในภายหลังหากคุณมีเวลา)
2. อินเทอร์เฟซคอลเลกชัน
อินเทอร์เฟซคอลเลกชันเป็นอินเทอร์เฟซพาเรนต์ของรายการตั้งค่าและอินเทอร์เฟซคิวและสามารถใช้งานอินเทอร์เฟซทั้งสามนี้ได้ในเวลาเดียวกัน อินเทอร์เฟซคอลเลกชันกำหนดวิธีการเฉพาะสำหรับการดำเนินการองค์ประกอบการรวบรวม คุณสามารถอ้างถึงเอกสาร API ที่นี่เราใช้ตัวอย่างเพื่อแสดงวิธีการเพิ่มองค์ประกอบการลบองค์ประกอบการส่งคืนจำนวนองค์ประกอบในคอลเลกชันและการล้างองค์ประกอบการรวบรวม
3. สองวิธีในการสำรวจอินเตอร์เฟสคอลเลกชันตัววนซ้ำและ foreach loop
1. อินเทอร์เฟซตัววนซ้ำ
Iterator ยังเป็นสมาชิกของ Java Collection Framework และส่วนใหญ่ใช้ในการสำรวจองค์ประกอบ (เช่นการเข้าถึงซ้ำ ๆ ) ในคอลเลกชันหรือที่เรียกว่าตัววนซ้ำ
มีวิธีการสามวิธี:
บูลีน Hasnext (): ส่งคืนองค์ประกอบถัดไปในคอลเลกชัน
Object next (): ส่งคืนองค์ประกอบถัดไปในคอลเลกชัน
โมฆะลบ (); ลบองค์ประกอบที่ส่งคืนโดยวิธีถัดไปสุดท้ายในคอลเลกชัน
(1) เมื่อกำหนดหนังสือตัวแปรวนซ้ำผ่านคำสั่ง "book =" สตริงทดสอบ ";" เมื่อเราส่งออกคอลเลกชันหนังสืออีกครั้งองค์ประกอบในคอลเลกชันไม่มีการเปลี่ยนแปลง นั่นคือเมื่อมันถูกใช้ซ้ำในองค์ประกอบการรวบรวมตัววนซ้ำจะไม่ผ่านองค์ประกอบการรวบรวมไปยังตัวแปรวนซ้ำ แต่ส่งผ่านค่าขององค์ประกอบการรวบรวมไปยังตัวแปรวนซ้ำ
(2) เมื่อใช้ iterator เพื่อเข้าถึงองค์ประกอบการรวบรวมคอลเลกชันโดยการลบองค์ประกอบการรวบรวม (it.remove ();) ครั้งสุดท้ายที่วิธีถัดไปที่ส่งคืนโดยองค์ประกอบการรวบรวมสามารถเพิ่มลงในคอลเลกชัน (book = "สตริงทดสอบ";) มิฉะนั้นจะมีการยกข้อยกเว้น java.util.concurrentModificationExcption
2. ใช้ foreach เพื่อวนผ่านองค์ประกอบการรวบรวม
รูปแบบ: สำหรับ (องค์ประกอบประเภท T ตัวแปรองค์ประกอบ X: Traversal Object A) {// program block}
ภาพประกอบ:
(1) foreach ช่วยลดความซับซ้อนของการเดินทางของอาร์เรย์และคอลเลกชัน หากคุณไม่ต้องการสำรวจคอลเลกชันทั้งหมดหรือคุณจำเป็นต้องใช้ค่าตัวห้อยภายในลูปคุณต้องใช้แบบดั้งเดิมสำหรับลูป
(2) ทำให้การเขียนโปรแกรมง่ายขึ้นและปรับปรุงความสามารถในการอ่านรหัสและความปลอดภัย (ไม่จำเป็นต้องกังวลเกี่ยวกับอาร์เรย์ข้ามขอบเขต)
(3) foreach โดยทั่วไปใช้ร่วมกับทั่วไป
บทสรุปด้านบนของกรอบการรวบรวม Java คือเนื้อหาทั้งหมดที่ฉันแบ่งปันกับคุณ ฉันหวังว่าคุณจะให้ข้อมูลอ้างอิงและฉันหวังว่าคุณจะสนับสนุน wulin.com มากขึ้น