ArrayList的简单应用

  1 import java.util.ArrayList;
  2 import java.util.Iterator;
  3 
  4 
  5 /*
  6  * ArrayList 集合类,内部元素可以重复,且内部有序
  7  * 
  8  * */
  9 public class ArrayListDemo1 {
 10   public static void main(String[] args) {
 11       ArrayList arraylist=new ArrayList();
 12         test a=new test(1,"","");
 13         test e=new test(1,"","");
 14         test b=new test(2,"","");
 15         test c=new test(3,"","");
 16         test d=new test(4,"","");
 17        //添加元素
 18          arraylist.add(a);
 19          arraylist.add(b);
 20          arraylist.add(c);
 21          arraylist.add(d);
 22        ///查询
 23        test v=(test)  arraylist.get(1);
 24          System.out.println(v);
 25         //遍历
 26          //方法一
 27          for(int i=0;i<arraylist.size();i++){
 28              test v1=(test)  arraylist.get(i);
 29              System.out.println(v1);
 30          }
 31          System.out.println("=========================");
 32          //方法二
 33          for (Object object : arraylist) {
 34              System.out.println((test)object);
 35         }
 36          System.out.println("=========================");
 37          //方法三
 38          Iterator k1=arraylist.iterator();
 39          while(k1.hasNext()){
 40              test v2=(test)k1.next();
 41              System.out.println(v2);
 42          }
 43          //查看集合类中是否存在相同元素
 44          System.out.println(arraylist.contains(a));//true
 45          System.out.println(arraylist.contains(e));//false   //重写equels方法后输出true
 46          //集合类中的元素移除
 47          arraylist.remove(0);
 48          arraylist.remove(b);
 49         
 50 }
 51 }
 52 class test{
 53     int id;
 54     String name;
 55     String Type;
 56     public int getId() {
 57         return id;
 58     }
 59     public void setId(int id) {
 60         this.id = id;
 61     }
 62     public String getName() {
 63         return name;
 64     }
 65     public void setName(String name) {
 66         this.name = name;
 67     }
 68     public String getType() {
 69         return Type;
 70     }
 71     public void setType(String type) {
 72         Type = type;
 73     }
 74     
 75     public test() {
 76         super();
 77     }
 78     public test(int id, String name, String type) {
 79         super();
 80         this.id = id;
 81         this.name = name;
 82         Type = type;
 83     }
 84     //重写toString
 85     public String toString() {
 86         return "test [id=" + id + ", name=" + name + "]";
 87     }
 88    //重写equels()
 89     public boolean equals(Object obj) {
 90         if (this == obj)
 91             return true;
 92         if (obj == null)
 93             return false;
 94         if (getClass() != obj.getClass())
 95             return false;
 96         test other = (test) obj;
 97         if (id != other.id)
 98             return false;
 99         return true;
100     }    
101 }

 泛型只在编译阶段有效,绕过编译阶段就可以绕过泛型。要绕过泛型可通过通过类类型反射集合类中的函数

posted on 2016-06-02 12:57  lgshiwoo  阅读(184)  评论(0编辑  收藏  举报