通过list接口的实现类创建两个集合,一个集合直接添加几组数据;另一个集合通过scanner从键盘录入。最后通过list接口的removeall方法去除相同的并进行判断。如果返回值是true,删除该数据并进行遍历。如果返回值的是false,使用list接口的addAll方法添加后再进行遍历。
代码如下
package com.ja.homework2;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Scanner;
public class Test1118 {
//static boolean addAll;
public static void main(String[] args) {
List<Object> arrayList = new ArrayList<Object>();
arrayList.add("小狗");
arrayList.add("小猪");
arrayList.add("小猫");
List<Object> arrayList2 = new ArrayList<Object>();
Scanner scanner = new Scanner(System.in);
while(true){
arrayList2.clear();
System.out.println("请输入动物");
String string = scanner.next();
arrayList2.add(string);
boolean addAll = arrayList.removeAll(arrayList2);
if(addAll==true){
System.out.println("你输入的重复了且删除成功");
for(Object object : arrayList){
System.out.println(object);
}
}else {
System.out.println("你输入的动物没有重复");
arrayList.addAll(arrayList2);
for (Object object2 : arrayList) {
System.out.println(object2);
}
}
}
}
}
输出结果如下:
反思:漏写了一行集合的清除代码导致输出不对,还以为其他地方出错了。下次应该多多注意。