การใช้ subList() และ clear() วิธีการ
รายการย่อย() เมธอดของอินเทอร์เฟซ List ยอมรับค่าจำนวนเต็มสองค่าที่แสดงดัชนีขององค์ประกอบ และส่งกลับมุมมองของออบเจ็กต์ List ปัจจุบันเพื่อลบองค์ประกอบระหว่างดัชนีที่ระบุ
ชัดเจน() เมธอดของอินเทอร์เฟซ List จะลบองค์ประกอบทั้งหมดออกจากวัตถุ List ปัจจุบัน
ดังนั้น ในการลบรายการย่อยเฉพาะของรายการอาร์เรย์ คุณเพียงแค่เรียกสองวิธีนี้บนออบเจกต์รายการของคุณโดยระบุขอบเขตของรายการย่อยที่คุณต้องการลบเป็น -
obj.subList().clear();
ตัวอย่าง
import java.util.ArrayList; public class RemovingSubList { public static void main(String[] args){ //Instantiating an ArrayList object ArrayList<String> list = new ArrayList<String>(); list.add("JavaFX"); list.add("Java"); list.add("WebGL"); list.add("OpenCV"); list.add("OpenNLP"); list.add("JOGL"); list.add("Hadoop"); list.add("HBase"); list.add("Flume"); list.add("Mahout"); list.add("Impala"); System.out.println("Contents of the Array List: \n"+list); //Removing the sub list list.subList(4, 9).clear(); System.out.println("Contents of the Array List after removing the sub list: \n"+list); } }
ผลลัพธ์
Contents of the Array List: [JavaFX, Java, WebGL, OpenCV, OpenNLP, JOGL, Hadoop, HBase, Flume, Mahout, Impala] Contents of the Array List after removing the sub list: [JavaFX, Java, WebGL, OpenCV, Mahout, Impala]
การใช้เมธอด removeRange()
removeRange() เมธอดของเมธอดคลาส AbstractList ยอมรับค่าจำนวนเต็มสองค่าที่แสดงดัชนีขององค์ประกอบของ ArrayList ปัจจุบันและลบออก
แต่นี่เป็นวิธีการที่มีการป้องกัน และหากต้องการใช้สิ่งนี้ คุณต้อง
-
สืบทอดคลาส ArrayList (จากคลาสของคุณ) โดยใช้คีย์เวิร์ดขยาย
-
ยกตัวอย่างชั้นเรียนของคุณ
-
เพิ่มองค์ประกอบให้กับวัตถุที่ได้รับ
-
จากนั้น ลบรายการย่อยที่ต้องการโดยใช้เมธอด removeRange()
ตัวอย่าง
import java.util.ArrayList; public class RemovingSubList extends ArrayList<String>{ public static void main(String[] args){ RemovingSubList list = new RemovingSubList(); //Instantiating an ArrayList object list.add("JavaFX"); list.add("Java"); list.add("WebGL"); list.add("OpenCV"); list.add("OpenNLP"); list.add("JOGL"); list.add("Hadoop"); list.add("HBase"); list.add("Flume"); list.add("Mahout"); list.add("Impala"); System.out.println("Contents of the Array List: \n"+list); //Removing the sub list list.removeRange(4, 9); System.out.println("Contents of the Array List after removing the sub list: \n"+list); } }
ผลลัพธ์
Contents of the Array List: [JavaFX, Java, WebGL, OpenCV, OpenNLP, JOGL, Hadoop, HBase, Flume, Mahout, Impala] Contents of the Array List after removing the sub list: [JavaFX, Java, WebGL, OpenCV, Mahout, Impala]