zoukankan      html  css  js  c++  java
  • java 遍历arrayList的四种方法

    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
     
     
  • 相关阅读:
    百度之星资格赛1001——找规律——大搬家
    HDU1025——LIS——Constructing Roads In JGShining's Kingdom
    DP(递归打印路径) UVA 662 Fast Food
    递推DP UVA 607 Scheduling Lectures
    递推DP UVA 590 Always on the run
    递推DP UVA 473 Raucous Rockers
    博弈 HDOJ 4371 Alice and Bob
    DFS(深度) hihoCoder挑战赛14 B 赛车
    Codeforces Round #318 [RussianCodeCup Thanks-Round] (Div. 2)
    DP(DAG) UVA 437 The Tower of Babylon
  • 原文地址:https://www.cnblogs.com/timssd/p/4951257.html
Copyright © 2011-2022 走看看