1. คอลเลกชันเป็นอินเทอร์เฟซระดับบนสุดของคลาสคอลเลกชันและอินเทอร์เฟซการสืบทอดโดยตรงรวมถึงรายการและชุด
ของสะสม
|-รายการ: องค์ประกอบได้รับการสั่งซื้อและองค์ประกอบสามารถทำซ้ำได้ เพราะระบบการรวบรวมมีดัชนี
|-อาร์เรย์ลิสต์: โครงสร้างข้อมูลพื้นฐานใช้โครงสร้างอาร์เรย์ คุณสมบัติ: ความเร็วในการสืบค้นเร็วมาก แต่การเพิ่มและการลบนั้นช้าไปหน่อย เธรดไม่ซิงค์
|-LinkedList: โครงสร้างข้อมูลของรายการที่เชื่อมโยงที่ใช้ในเลเยอร์พื้นฐาน คุณสมบัติ: ความเร็วของการเพิ่มและการลบนั้นเร็วมากและการสืบค้นช้าเล็กน้อย เธรดไม่ซิงค์
|-Vector: เลเยอร์พื้นฐานเป็นโครงสร้างข้อมูลอาร์เรย์ การซิงโครไนซ์เธรด แทนที่ด้วย ArrayList เนื่องจากประสิทธิภาพต่ำ
|-ชุด: องค์ประกอบไม่เป็นระเบียบและไม่สามารถทำซ้ำองค์ประกอบได้
รายการ: วิธีที่ไม่ซ้ำกัน วิธีการใด ๆ ที่สามารถใช้งานเครื่องหมายมุมเป็นวิธีที่ไม่ซ้ำกันของระบบนี้
เพิ่มขึ้น:
เพิ่ม (ดัชนี, องค์ประกอบ); Addall (ดัชนี, คอลเลกชัน);
ลบ: ลบ (ดัชนี);
การเปลี่ยนแปลง: ตั้งค่า (ดัชนี, องค์ประกอบ);
ตรวจสอบ:
รับ (ดัชนี): sublist (จาก, ถึง); listiterator (); INT INDEXOF (OBJ): รับตำแหน่งขององค์ประกอบที่ระบุ listiterator listiterator ();
รายการคอลเลกชันตัววนซ้ำที่ไม่ซ้ำกัน listiterator เป็นเครื่องมือย่อยของตัววนซ้ำ
ในระหว่างการทำซ้ำองค์ประกอบในคอลเลกชันไม่สามารถจัดการได้โดยวิธีการของวัตถุคอลเลกชัน เนื่องจากข้อยกเว้นพร้อมกันพร้อมกันจะเกิดขึ้น
ดังนั้นเมื่อ iterator คุณสามารถใช้ตัววนซ้ำเพื่อพลาดองค์ประกอบการดำเนินการเท่านั้น แต่วิธีการวนซ้ำนั้นมี จำกัด และคุณสามารถตัดสินนำออกและลบองค์ประกอบได้เท่านั้น
หากคุณต้องการการดำเนินการอื่น ๆ เช่นการเพิ่มการแก้ไข ฯลฯ คุณต้องใช้อินเตอร์เฟสย่อย อินเทอร์เฟซนี้สามารถรับได้ผ่านวิธี listiterator ของการรวบรวมรายการเท่านั้น
รหัสตัวอย่าง:
นำเข้า java.util.*; คลาส listdemo {โมฆะคงที่สาธารณะ sop (Object obj) {System.out.println (OBJ); } วิธีโมฆะคงที่สาธารณะ () {arrayList al = new ArrayList (); // เพิ่มองค์ประกอบ al.add ("Java01"); al.add ("Java02"); al.add ("Java03"); SOP ("คอลเลกชันดั้งเดิมคือ:"+al); // เพิ่มองค์ประกอบที่ตำแหน่งที่ระบุ al.add (1, "Java09"); // ลบองค์ประกอบที่ตำแหน่งที่ระบุ //al.remove(2); // แก้ไของค์ประกอบ //al.set(2,"java007 "); // รับองค์ประกอบผ่านเครื่องหมายมุม sop ("รับ (1):"+al.get (1)); sop (al); // รับองค์ประกอบทั้งหมด สำหรับ (int x = 0; x <al.size (); x ++) {system.out.println ("al ("+x+") ="+al.get (x)); } iterator it = al.iterator (); ในขณะที่ (it.hasnext ()) {sop ("ถัดไป:"+it.next ()); } // รับตำแหน่งของวัตถุผ่านดัชนีของ sop ("index ="+al.indexof ("java02")); รายการย่อย = al.sublist (1,3); SOP ("sub ="+sub); } โมฆะคงที่สาธารณะหลัก (สตริง [] args) {// รายการสาธิตตัววนซ้ำ arraylist al = new ArrayList (); // เพิ่มองค์ประกอบ al.add ("Java01"); al.add ("Java02"); al.add ("Java03"); sop (al); listiterator li = al.listiterator (); // sop ("hasprevious ():"+li.hasprevious ()); ในขณะที่ (li.hasnext ()) {object obj = li.next (); ถ้า (obj.equals ("java02")) //li.add("java009 "); li.set ("Java006"); } ในขณะที่ (li.hasprevious ()) {sop ("pre ::"+li.previous ()); } // sop ("hasnext ():"+li.hasnext ()); // sop ("hasprevious ():"+li.hasprevious ()); sop (al); /* // ในระหว่างกระบวนการวนซ้ำเตรียมที่จะเพิ่มหรือลบองค์ประกอบ ตัววนซ้ำมัน = al.iterator (); ในขณะที่ (it.hasnext ()) {object obj = it.next (); ถ้า (obj.equals ("java02")) //al.add("java008 "); it.remove (); // ลบการอ้างอิงของ Java02 ออกจากคอลเลกชัน sop ("obj ="+obj); } sop (al); -ข้างต้นเป็นการรวบรวมข้อมูลเกี่ยวกับอินเทอร์เฟซคอลเลกชัน Java ฉันหวังว่ามันจะช่วยนักเรียนที่เรียนรู้ Java