dim objstr as string ="1111|2222|3333|eeee|3333"
            Dim objarray As New ArrayList
            objarray.Add(objstr.Split("|"))
            Dim i As Integer
                        For i = 0 To objarray.Count 
                DropDownList1.Items.Add(CStr(objarray(0)(i)))
            Next
*******************************************
 objarray.Count 为什么没有办法获取 objarray 元素的个数呢?总是为 1

解决方案 »

  1.   

    objstr.Split("|")这里产生一个string数组,objarray.add加的是一个数组对象的缘故吧
      

  2.   

    ArrayList的Add方法是可以添加任何对象的!就是说Add一次,就添加了一个对象,
    所以,Count就是1啊!!
      

  3.   

    使用objarray = objstr.Split("|")
    objarray 的count就不是1了。
      

  4.   

    objstr.Split("|")返回的是一个数组  为什么 你要用 arraylist呢
    你可以这样啊string sz_Split="|"; string[] str=objstr.Split(sz_Split.ToCharArray());
    string数组 不是也可以用的吗 ?
      

  5.   

    dim objstr as string ="1111|2222|3333|eeee|3333"
    Dim objarray As New ArrayList
    Dim strs AS string[]
    strs = objstr.Split("|")
    foreach(string str in strs)
       objarray.Add(str)
    objarray.Add(objstr.Split("|"))
    Dim i As Integer
    For i = 0 To objarray.Count
    DropDownList1.Items.Add(CStr(objarray(0)(i)))
    Next
    *******
      

  6.   

    修改一下:     
                dim objstr as string ="1111|2222|3333|eeee|3333"
                Dim objarray As New ArrayList
     '============================================================
                Dim strArray As string() = objstr.Split("|")
                Dim i As Integer
                For i = 0 To strArray .Count 
                    DropDownList1.Items.Add(strArray(i))
                Next
      

  7.   

    以楼主的意思,根本用不着ArrayList...
      

  8.   

    不好意思忘记 -1 了,会数组越界的。
                Dim objstr as string ="1111|2222|3333|eeee|3333"
               '============================================================
                Dim strArray As string() = objstr.Split("|")
                Dim i As Integer
                For i = 0 To strArray.Count - 1 
                    DropDownList1.Items.Add(strArray(i))
                Next
      

  9.   

    Split 产生的是一个数组  实现了 ICollection  接口 
    如果要一定要用ArrayList的话 直接用构造函数就可以可以初始化了string strArrayList = "1111|2222|3333|eeee|3333";
    ArrayList arrSplit = new ArrayList(strArrayList.Split('|'));
    Response.Write(arrSplit.Count.ToString());