程序代码:
* /*知识点:
* 集合:Collection接口(定义增删改查的规范),存储数据的一种方式
* 可以存储任意类型的数据
* 提供了操作数据的方法:
* 增删改查
* Collection:
* List:有序且可重复的
* ArrayList:增删慢,查询快 底层用数组实现
* LinkedList: 增删快,查询慢,链表实现
* Vector:底层用数组实现,线程安全
* Set:无序且不可重复的
* HashSet:
* TreeSet:
* LinkedHashSet:*/
* public class Demo001 {
public static void main(String[] args) {
Collection c = new ArrayList();
c.add("two");
c.add(6);
c.add("学习");
System.out.println(c);
//实际存储几个对象(存储对象的个数)
int i=c.size();
System.out.println(i);
//判断集合是否为空 return this.size()==0
System.out.println(c.isEmpty());
//判断某个元素是否在这个集合当中
//调用对象的equals方法进行比较,如果比较结果为真,则返回true,反之
boolean flag=c.contains("two");
System.out.println(flag);
//将集合转为数组
Object[] objs = c.toArray();
System.out.println(objs);//输出地址
for(Object obj:objs){//遍历输出内容
System.out.println(obj);
}
//将对象从集合中删除
Boolean remove = c.remove("two");
System.out.println(remove);
System.out.println(c);
//判断某个集合是否包含另一个集合的所有元素
Collection c2 = new ArrayList();
c2.add("two");
c2.add("9");
boolean containsAll = c.containsAll(c2);
System.out.println(containsAll);
System.out.println(c);
//addAll();将某个集合中的元素全部添加到另一个集合当中
boolean addAll = c.addAll(c2);
System.out.println(addAll);
System.out.println(c);
//remove();将某个集合中的全部元素从集合中删除
boolean removeAll = c.removeAll(c2);
System.out.println(removeAll);
System.out.println(c);
//Predicate的接口 删除的过滤条件
/*①Predicate p = new Predicate(){
//重写test方法
public boolean test(Object t){
//根据该条件进行条件删除
return true;
}
};
c.removeIf(p);//带条件的删除
*/
/*②c.removeIf((o)->true);*/
c.removeIf(new Predicate(){//③JDK1.8之后才有的
public boolean test(Object t){
return true;
}
});//带条件的删除
System.out.println(c);
//清空集合
/*c.clear();
System.out.println(c);*/
}
}