集合框架之collection中接口的用法

来源:互联网 发布:网络协议与分析 编辑:程序博客网 时间:2024/06/06 03:45

/*
集合类的特点:
集合只用于存储对象,集合长度是可变的,集合可以存储不同类型的对象。

1,add方法的参数类型是Object。以便于接收任意类型对象。
2,集合中存储的都是对象的引用(地址)。

*/
import java.util.*;
class CollectionDemo
{
 public static void main(String[] args)
 {
  //jiaoji_method();
  
  method_get();

 }

  public static void method_get()
 {
  ArrayList al = new ArrayList();
  
  al.add("java01");
  al.add("java02");
  al.add("java03");
  al.add("java04");
  

  //iterator()这个方法返回的应该是Iterator这个接口的一个子类对象
  //接口型应用只能指向自己的子类对象,
  //而这个对象不是new出来的,而是通过集合中的方法获取到的
  Iterator it =  al.iterator(); //获取迭代器,用于取出集合中的元素
  
  sop(it.hasNext());
  sop(it.next());
 }

 public static void jiaoji_method()
 {
  ArrayList al1 = new ArrayList();
  
  al1.add("java01");
  al1.add("java02");
  al1.add("java03");
  al1.add("java04");

  ArrayList al2 = new ArrayList();

  al2.add("java01");
  al2.add("java02");
  al2.add("java05");
  al2.add("java06");
  

  //al1.retainAll(al2); //取交集,al1中只会保留al2中相同的元素
  al1.removeAll(al2); //去掉重复的数据
  
  sop("al1"+al1);
  sop("al2"+al2);
 }

 public static void base_method()
 {
  //定义一个集合容器。使用Collection接口的子类。ArraryList
  ArrayList al = new ArrayList(); 

  // 1:添加元素。
  al.add("java01");//add(object obj)
  al.add("java02");
  al.add("java03");
  al.add("java04");

  //打印原集合
  sop(al);


  // 3:删除元素。
  //al.remove("java02");

  //清空集合
  //al.clear();


  //4:判断元素。
  sop("java03是否存在:"+al.contains("java03"));
  sop("集合是否为空?"+al.isEmpty());

  // 2:获取个数。集合长度。
  sop("size:"+al.size());

  //打印改变后的集合。
  sop(al);

 }

 public static void sop(Object obj)
 {
  System.out.println(obj);
 }
}