功能:

  1. Java集合框架的根级接口(root interface)

 

知识摘要:

  1. Java集合框架的根级接口(root interface)
  2. 常用子接口:List、Set、Queue,注意map是自成体系的
  3. 方法:新增、包含、遍历、交集、判空、大小、清空等

 

程序演示: 放大

  1. package com.cxy.collection;  
  2.   
  3. import java.util.ArrayList;  
  4. import java.util.Collection;  
  5. import java.util.HashSet;  
  6. import java.util.Iterator;  
  7.   
  8. /** 
  9.  * @author cxy @ www.cxyapi.com 
  10.  */  
  11. public class CollectionTest  
  12. {  
  13.     public static void main(String[] args)  
  14.     {  
  15.         Collection children=new ArrayList(); //注意由于这里没有加泛型,所以很多黄线警告  
  16.         //新增  
  17.         children.add("小明");  
  18.         children.add("小红");  
  19.         children.add("小白");  
  20.         System.out.println("======================");  
  21.           
  22.         //是否包含  
  23.         System.out.println("幼儿园一班是否有叫小明的小朋友? 答:"+children.contains("小明"));  
  24.         System.out.println("幼儿园一班是否有叫小黑的小朋友? 答:"+children.contains("小黑"));  
  25.         System.out.println("======================");  
  26.           
  27.           
  28.         //遍历(2种方式)  
  29.         System.out.print("Iterator法遍历:");  
  30.         Iterator it = children.iterator(); //Iterator(迭代器) 请参看博客中有关Iterator专门的文章  
  31.         while (it.hasNext())  
  32.         {  
  33.             System.out.print((String)it.next()+"  ");//由于没有使用泛型,所以这里需要强转一下  
  34.         }  
  35.         System.out.println("");  //保持格式,无实际用处  
  36.           
  37.         /*上面这种方式太注重遍历过程的本身,对初学者来说有些复杂,那么试试foreach吧 
  38.          *foreach是java 5 提供的一种便捷遍历方法 
  39.          */  
  40.         System.out.print("foreach法遍历:");  
  41.         for(Object one : children)  
  42.         {  
  43.             System.out.print((String)one+"  ");  
  44.         }  
  45.         System.out.println("");  //保持格式,无实际用处  
  46.         System.out.println("======================");  
  47.           
  48.           
  49.         //转换成数组  
  50.         Object[] array=children.toArray();  
  51.         System.out.println("数组大小:"+array.length);  
  52.         System.out.println("======================");  
  53.           
  54.         //删除  
  55.         System.out.println("删除前:"+children); //这种打印方法实际用的是Collection实现类的toString方法  
  56.         children.remove("小明");  
  57.         System.out.println("删除后:"+children);  
  58.         System.out.println("======================");  
  59.           
  60.         //交集  
  61.         Collection goodBoySet=new HashSet();  //一个set集合  
  62.         goodBoySet.add("小明");  
  63.         goodBoySet.add("小白");  
  64.         children.retainAll(goodBoySet);  //children集合中存在于goodBoySet集合的数据,简单的讲就是交集。  
  65.         System.out.println("交集结果:"+children);  
  66.         System.out.println("======================");  
  67.           
  68.         //判空、大小、清空  
  69.         System.out.println("集合是否是空?答:"+children.isEmpty());  
  70.         System.out.println("集合大小:"+children.size());  
  71.         children.clear();  
  72.         System.out.println("清空后,集合是否是空?答:"+children.isEmpty());  
  73.         System.out.println("清空后,集合大小:"+children.size());  
  74.         System.out.println("======================");  
  75.     }  
  76. }