subList()
和clear()
方法List接口的subList()方法接受两个表示元素索引的整数值,并返回当前List对象的视图,以移除指定索引之间的元素。
List接口的clear()方法从当前List对象中删除所有元素。
因此,要删除数组列表的特定子列表,您只需要通过指定需要删除的子列表的边界,就可以在列表对象上调用这两个方法-
obj.subList().clear();
import java.util.ArrayList; public class RemovingSubList { public static void main(String[] args){ //实例化ArrayList对象 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); //删除子列表 list.subList(4, 9).clear(); System.out.println("Contents of the Array List after 删除子列表: \n"+list); } }
Contents of the Array List: [JavaFX, Java, WebGL, OpenCV, OpenNLP, JOGL, Hadoop, HBase, Flume, Mahout, Impala] Contents of the Array List after 删除子列表: [JavaFX, Java, WebGL, OpenCV, Mahout, Impala]
method()
AbstractList类方法的removeRange()方法接受表示当前ArrayList元素索引的两个整数值并将其删除。
但这是一种受保护的方法,要使用此方法,您需要
使用extend关键字继承ArrayList类(从您的类)。
实例化您的课程。
将元素添加到获得的对象。
然后,使用该removeRange()
方法删除所需的subList 。
import java.util.ArrayList; public class RemovingSubList extends ArrayList<String>{ public static void main(String[] args){ RemovingSubList list = new RemovingSubList(); //实例化ArrayList对象 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); //删除子列表 list.removeRange(4, 9); System.out.println("Contents of the Array List after 删除子列表: \n"+list); } }
Contents of the Array List: [JavaFX, Java, WebGL, OpenCV, OpenNLP, JOGL, Hadoop, HBase, Flume, Mahout, Impala] Contents of the Array List after 删除子列表: [JavaFX, Java, WebGL, OpenCV, Mahout, Impala]