List删除方法:remove(对象),remove(位置),removeAll(集合)
调用List接口类的courseToSelcet对象的remove()方法,括号中可以放要删除的元素,会删除列表中第一个遍历到的对应的元素;括号中也可以放数字。
public void testRemove(){ //Course cr = (Course)coursesToSelect.get(4); System.out.println("即将删除4位置上的课程"); coursesToSelect.remove(4); System.out.println("成功删除"); testForEach(); }
public void testRemove(){ Course cr = (Course)coursesToSelect.get(4); System.out.println(cr.id+cr.name); coursesToSelect.remove(cr); System.out.println("成功删除"); testForEach(); }
public static void main(String[] args){ ListTest lt = new ListTest(); lt.testAdd(); lt.testGet(); lt.testlterator(); lt.testForEach(); lt.testModify(); lt.testForEach(); lt.testRemove(); }
通过removeAll方法批量删除数组的元素
通过remove删除List元素(注意需要先通过get方法获取要删除的元素)
利用remove方法删除集合中元素有以下三种类型:
remove(int index) //删除列表中的指定位置的元素
remove(Object o) //移除指定的元素。
removeAll(Collection c) //删除所有元素
删除,remove removeall使用
List 中的删除元素remove
移除。。。
removeAll
list中add,addall,set,foreach,remove,removeall用法
Course cr =(Course)coursesToSelect.get(4);
coursesToSelect.remove(cr);
coursesToSelect.remove(4);
Course[] cr ={(Course)coursesToSelect.get(4),(Course)coursesToSelect.get(5)};
coursesToSelect.remove(Arrays.asList(cr));
删除对象:
public void remove() {
System.out.println("删除成员");
Cause ca1 = (Cause)causetolist.get(0);
causetolist.remove(ca1);//方法重载,分别是成员或者索引
};
public void remove1() {
System.out.println("删除2");
causetolist.remove(0);
}
public void remove2() {
System.out.println("删除3");
Cause[] ca1= {(Cause)causetolist.get(0),(Cause)causetolist.get(1)};
causetolist.removeAll(Arrays.asList(ca1));
}
remove(index)和removeAll()方法删除集合中的数据
删除
remove(对象)
remove(数字(位置))
removeAll(对象序列);
删除List中的元素:
remove另一种使用方法:
removeAll的使用:
利用remove方法删除集合中元素有以下三种类型
remove(int index) //删除列表中的指定位置的元素
remove(Object o) //移除指定的元素。
removeAll(Collection c) //删除所有元素
remove(位置);方法调用位置取值范围
remove(cr),是否会删除集合中所有和cr相同的元素
在同一个类中:
对于静态方法,其他的静态或非静态方法都可以直接调用它。
而对于非静态方法,其他的非静态方法是可以直接调用它的。但是其他静态方法只有通过对象才能调用它。
public class Courses{
public String id;
public String name;
public Courses(String id,String name){
this.id=id;
this.name=name;}}
import java.util.Set;
import java.util.HashSet;
public class Student{
public String id;
public String name;
public Set courses;
public Student(String id,String name){
this.id=id;
this.name=name;
this.coursers=new HashSet();
}}
import java.util.List;
import java.util.ArrayList;
import java.util.Iterator;
public class ListTest{
//用于存放备选课程的list
public List coursesToSelect;
public ListTest(){
this.coursesToSelect=new ArrayList();
}
//用于往coursesToSelsect中添加备选课程
public void testAdd(){
//创建一个课程对象,并通过调用add方法,添加到备选课程list中
Course cr1=new Course("1","数据结构");
coursesToSelect.add(cr1);
Course temp=(Course)coursesToSelect.get(0);
System.out.println("添加了课程:"+temp.id+";"+temp.name);
Course cr2=new Course("2","C语言");
courseToSelect.add(0,cr2);
Course temp2=(Course)coursesToSelect.get(0);
System.out.println("添加了课程:"+temp2.id+";"+temp2.name);
/**Course cr2=new Course("2","C语言");
courseToSelect.add(4,cr2);
报错,数组下标越界*/
Course[] course={new Course("3","离散数学"),new Course("4","汇编语言")};
coursesToSelect.addAll(Arrays.asList(course));
Course temp3=(Course)coursesToSelect.get(2);
Course temp4=(Course)coursesToSelect.get(3);
System.out.println("添加了两门课程:"+temp3.id+";"+temp3.name+";"+temp4.id+";"+temp4.name);
Course[] course2={new Course("5","高等数学"),new Course("6","大学英语")};
coursesToSelect.addAll(2,Arrays.asList(course2));
Course temp5=(Course)coursesToSelect.get(2);
Course temp6=(Course)coursesToSelect.get(3);
System.out.println("添加了两门课程:"+temp5.id+";"+temp5.name+";"+temp6.id+";"+temp6.name);}
public void testGet(){
int size=coursesToSelect.size();
System.out.println("有如下课程待选:");
for(int i=0;i<size;i++){
Course cr=(Course)coursesToSelect.get(i);
System.out.println("课程:"+cr.id+";"+cr.name);}}
//通过迭代器来遍历list
public void testIterator(){
Iterator it=coursesToSelect.iterator();
System.out.println("有如下课程待选:");
while(it.hasNext()){
Course cr=(Course)it.next();
System.out.println("课程:"+cr.id+";"+cr.name);}}
//通过for each方法访问集合元素
public void testForEach(){
System.out.println("有如下课程待选(通过for each访问):");
for(Object obj:coursesToSelect){
Course cr=(Course)obj;
System.out.println("课程:"+cr.id+";"+cr.name);
}}
//修改list中的元素
public void testModify(){
coursesToSelect.set(4,new Course("7","毛概"));
}
//删除list中的元素
public void testRemove(){
//方法1
/**Course cr=(Course)coursesToSelect.get(4);
System.out.println("我是课程:"+cr.id+";"+cr.name+",我即将被删除");
coursesToSelect.remove(cr);*/
//方法2
/**System.out.println("即将删除4位置上的课程");
coursesToSelect.remove(4);
System.out.println("成功删除课程!");*/
//方法3
System.out.println("即将删除4位置和5位置上的课程");
Course[] courses={(Course)coursesToSelect.get(4),(Course)coursesToSelect.get(5)};
coursesToSelect.removeAll(Arrays.asList(courses));//将数组转换为集合
System.out.println("成功删除课程!");
testForEach();
}
public static void main(String[]args){
ListTest it=new ListTest();
it.testAdd();
it.testGet();
it.testIterator();
it.testForEach();
it.testModify();
it.testForEach();
it.testRemove();
}
}
removeAll
remove方法 两种
remove(int index) //删除列表中的指定位置的元素
remove(Object o) //移除指定的元素。
removeAll(Collection c) //删除所有元素
Array.asList()方法可以将数组转换为集合