写写程序,一种成就的感觉

写写程序,一种成就的感觉

导航

asp.net 动态二维数组

Posted on 2010-07-27 10:00  hateyoucode  阅读(7746)  评论(0编辑  收藏  举报

一:ArrayList存二维数组

为什么用ArrayList?
ArrayList是动态数组,可以在不知道长度的情况下声明和实力化,并且可以根据需要动
态增加长度,大小,删除任意索引位置的内容.这些都是普通数组无法办到的.

String[] get_num=new String[3];  //为了做您做例子随意搞个可爱的数组
get_num[0]="8,5,12,12";       
get_num[1]="82,52,52,42";
get_num[2]="18,35,112,132";

        ArrayList AL=new ArrayList();   //声明并实力化一个 傻傻的没吃饱的ArrayList
        ArrayList AL2 = new ArrayList();//声明并实力化一个 傻傻的没吃饱的ArrayList

        
        for (int i=0; i < get_num.Length; i++)
        {
           String[] get_numArray= get_num[i].Split(',');           //把普通数组按照","号切开
           for (int j = 0; j < get_numArray.Length; j++)
           {
              
               AL2.Add((double)(double.Parse(get_numArray[j])));  //这个例子值默认是double类
型的把第二维的内容加到AL2中

             
           }
          
               AL.Add((double[])AL2.ToArray(typeof(double)));//把第一维的内容加到AL中
               AL2.Clear();                  //清除内容以免下一次第二维重复累积

          

        }
      
     
          double[][] get_countNum=(double[][])AL.ToArray(typeof(double[]));  //OK!他吃饱了,AL被转
化成2维数组

 

 

自己写的

 

if (!IsPostBack)
        {
            string[] a = Common.DealersRol().Split(new char[] { ',' });
            ArrayList Al = new ArrayList();
            ArrayList Al2 = new ArrayList();
            for (int i = 0; i < a.Length; i++)
            {
                string[] b = a[i].Split(new char[] { '|' });
                for (int j = 0; j < b.Length; j++)
                {
                    Al2.Add((string)b[j]);
                }
                Al.Add((string[])Al2.ToArray(typeof(string)));
                Al2.Clear();
            }
            string[][] c = (string[][])Al.ToArray(typeof(string[]));
            DropDownList1.DataSource = c;
            DropDownList1.DataBind();
        }