การใช้ 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]