yyyyyyyyyyyyyyyyyyyy

博客园 首页 新随笔 联系 订阅 管理

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class ArrayListDemo {
    public static void main(String args[]){
        List<String> list = new ArrayList<String>();
        list.add("luojiahui");
        list.add("luojiafeng");

        //方法1
        Iterator it1 = list.iterator();
        while(it1.hasNext()){
            System.out.println(it1.next());
        }

        //方法2
        for(Iterator it2 = list.iterator();it2.hasNext();){
             System.out.println(it2.next());
        }

        //方法3
        for(String tmp:list){
            System.out.println(tmp);
        }

        //方法4
        for(int i = 0;i < list.size(); i ++){
            System.out.println(list.get(i));
        }

    }
}

 

 

 

 

 

 

 

Java中ArrayList用法详解

听语音
  • |
  • 浏览:3640
  • |
  • 更新:2014-11-24 23:54
一键约师傅

百度师傅高质屏和好师傅,拯救你的碎屏机

System.Collections.ArrayList类是一个特殊的数组。通过添加和删除元素,就可以动态改变数组的长度。

工具/原料

 
  • Java

方法/步骤

 
  1. 1

    一.优点

     

    1。支持自动改变大小的功能

    2。可以灵活的插入元素

    3。可以灵活的删除元素

  2. 2

    二.局限性

     

    跟一般的数组比起来,速度上差些

  3. 3

    三.添加元素

     

    1.publicvirtualintAdd(objectvalue);

     

    将对象添加到ArrayList的结尾处

     

    ArrayListaList=newArrayList();

    aList.Add("a");

    aList.Add("b");

    aList.Add("c");

    aList.Add("d");

    aList.Add("e");

    内容为abcde

  4. 4

    2.publicvirtualvoidInsert(intindex,objectvalue);

     

    将元素插入ArrayList的指定索引处

     

    ArrayListaList=newArrayList();

    aList.Add("a");

    aList.Add("b");

    aList.Add("c");

    aList.Add("d");

    aList.Add("e");

    aList.Insert(0,"aa");

     

    结果为aaabcde

  5. 5

    3.publicvirtualvoidInsertRange(intindex,ICollectionc);

     

    将集合中的某个元素插入ArrayList的指定索引处

     

    ArrayListaList=newArrayList();

    aList.Add("a");

    aList.Add("b");

    aList.Add("c");

    aList.Add("d");

    aList.Add("e");

    ArrayListlist2=newArrayList();

    list2.Add("tt");

    list2.Add("ttt");

    aList.InsertRange(2,list2);

     

    结果为abtttttcde

  6. 6

    四.删除

     

    a)publicvirtualvoidRemove(objectobj);

     

    从ArrayList中移除特定对象的第一个匹配项,注意是第一个

     

    ArrayListaList=newArrayList();

    aList.Add("a");

    aList.Add("b");

    aList.Add("c");

    aList.Add("d");

    aList.Add("e");

    aList.Remove("a");

     

    结果为bcde

  7. 7

    2.publicvirtualvoidRemoveAt(intindex);

     

    移除ArrayList的指定索引处的元素

     

    aList.Add("a");

    aList.Add("b");

    aList.Add("c");

    aList.Add("d");

    aList.Add("e");

    aList.RemoveAt(0);

     

    结果为bcde

  8. 8

    3.publicvirtualvoidRemoveRange(intindex,intcount);

     

    从ArrayList中移除一定范围的元素。Index表示索引,count表示从索引处开始的数目

     

    aList.Add("a");

    aList.Add("b");

    aList.Add("c");

    aList.Add("d");

    aList.Add("e");

    aList.RemoveRange(1,3);

     

    结果为ae

  9. 9

    4.publicvirtualvoidClear();

     

    从ArrayList中移除所有元素。

  10. 10

    五.排序

     

    a)publicvirtualvoidSort();

     

    对ArrayList或它的一部分中的元素进行排序。

     

    ArrayListaList=newArrayList();

    aList.Add("e");

    aList.Add("a");

    aList.Add("b");

    aList.Add("c");

    aList.Add("d");

    DropDownList1.DataSource=aList;//DropDownListDropDownList1;

    DropDownList1.DataBind();

     

    结果为eabcd

     

    ArrayListaList=newArrayList();

    aList.Add("a");

    aList.Add("b");

    aList.Add("c");

    aList.Add("d");

    aList.Add("e");

    aList.Sort();//排序

    DropDownList1.DataSource=aList;//DropDownListDropDownList1;

    DropDownList1.DataBind();

     

    结果为abcde

  11. 11

    b)publicvirtualvoidReverse();

     

    将ArrayList或它的一部分中元素的顺序反转。

     

    ArrayListaList=newArrayList();

    aList.Add("a");

    aList.Add("b");

    aList.Add("c");

    aList.Add("d");

    aList.Add("e");

    aList.Reverse();//反转

    DropDownList1.DataSource=aList;//DropDownListDropDownList1;

    DropDownList1.DataBind();

    结果为edcba

  12. 12

    六.查找

     

    a)publicvirtualintIndexOf(object);

    b)publicvirtualintIndexOf(object,int);

    c)publicvirtualintIndexOf(object,int,int);

     

    返回ArrayList或它的一部分中某个值的第一个匹配项的从零开始的索引。没找到返回-1。

     

    ArrayListaList=newArrayList();

    aList.Add("a");

    aList.Add("b");

    aList.Add("c");

    aList.Add("d");

    aList.Add("e");

    intnIndex=aList.IndexOf(“a”);//1

    nIndex=aList.IndexOf(“p”);//没找到,-1

    d)publicvirtualintLastIndexOf(object);

    e)publicvirtualintLastIndexOf(object,int);

    f)publicvirtualintLastIndexOf(object,int,int);

     

    返回ArrayList或它的一部分中某个值的最后一个匹配项的从零开始的索引。

     

    ArrayListaList=newArrayList();

    aList.Add("a");

    aList.Add("b");

    aList.Add("a");//同0

    aList.Add("d");

    aList.Add("e");

    intnIndex=aList.LastIndexOf("a");//值为2而不是0

     

    g)publicvirtualboolContains(objectitem);

     

    确定某个元素是否在ArrayList中。包含返回true,否则返回false

  13. 13

    七.其他

     

    1.publicvirtualintCapacity{get;set;}

     

    获取或设置ArrayList可包含的元素数。

     

    2.publicvirtualintCount{get;}

     

    获取ArrayList中实际包含的元素数。

    Capacity是ArrayList可以存储的元素数。Count是ArrayList中实际包含的元素数。Capacity总是大于或等于Count。如果在添加元素时,Count超过Capacity,则该列表的容量会通过自动重新分配内部数组加倍。

    如果Capacity的值显式设置,则内部数组也需要重新分配以容纳指定的容量。如果Capacity被显式设置为0,则公共语言运行库将其设置为默认容量。默认容量为16。

    在调用Clear后,Count为0,而此时Capacity切是默认容量16,而不是0

     

    3.publicvirtualvoidTrimToSize();

     

    将容量设置为ArrayList中元素的实际数量。

    如果不向列表中添加新元素,则此方法可用于最小化列表的内存系统开销。

    若要完全清除列表中的所有元素,请在调用TrimToSize之前调用Clear方法。截去空ArrayList会将ArrayList的容量设置为默认容量,而不是零。

     

    ArrayListaList=newArrayList();

    aList.Add("a");

    aList.Add("b");

    aList.Add("c");

    aList.Add("d");

    aList.Add("e");//Count=5,Capacity=16,

    aList.TrimToSize();//Count=Capacity=5;

    END
 
 
posted on 2015-11-09 21:43  xxxxxxxx1x2xxxxxxx  阅读(210)  评论(0编辑  收藏  举报