发生了一个异常:
错误 6 无法将类型“System.Collections.Generic.List<string>”转换为“string[]” C:\Users\Administrator\Desktop\HRMS\M_Solution\M_Web\Admin\Power\Detailed.aspx.cs 69 32 C:\...\M_Web\请问:List<string>和string[]的差别和联系,它们之间又怎样进行相互转换???

解决方案 »

  1.   

    一个是 List 一个 Array, 类不一样。List 用 ToArray() 转成 Array
      

  2.   

    List<string> 泛型集合(只能存字符串) 。
    string[] 字符串数组 。
      

  3.   

    List<string>=string[].ToList()list可以通过string 类型数组转换
      

  4.   

    List<string>是集合;string[]是数组;
                //string[] 转List<string>
                string [] str={"12","34"};
                List<string> ls = new List<string>(str);
                foreach (var item in ls)
                {
                    Console.WriteLine(item);
                }
                //List<string>转string[]
                string[] kk = ls.ToArray();
                for (int i = 0; i < kk.Length;i++ )
                {
                    Console.WriteLine(kk[i]);
                }
      

  5.   

    string[]表示字符串数组,创建后大小固定,不能改变元素的个数。
    List<string>表示泛型集合,集合中的每个元素都是字符串,创建后可以动态改变元素的个数。泛型集合有一个ToArray方法,可以转换成对应的数组。
      

  6.   

    一个是集合,一个是数组.ToList()转化为集合。.ToArray()转化为数组
      

  7.   


    你把List当成数组直接用了      .ToArray()转化
      

  8.   

    List<string> 泛型集合
    String[] 数组 直接使用当然会出错了
      

  9.   

    1、List<string> 与string[] 的差别
    List<>是一个泛型对象,实例化后相当于是一个List对象。List对象内部可以聚合若干个(理论上不限制大小)同类型对象,并提供很多方便的方法来提供一些基本操作。可以理解为一个封装好的链表对象
    多说几句废话:泛型本身的优点
    1.类型安全
    2.不用频繁的的拆箱装箱在就是 数组了
    string[]   就是简单的强类型化数组.,没什么好说的。
    总的来说,List<>更灵活和方便使用,但是开销更大。
      

  10.   

    2、相互转换
    从string转换成List<string>
    string result = string.Join(", ", studentNames.ToArray());
    List<string> newStudentNames = new List<string>(result.Split(new string[] { ", " }, StringSplitOptions.RemoveEmptyEntries));foreach (string s in newStudentNames)
    {
        System.Diagnostics.Debug.WriteLine(s);
    }
      

  11.   

    List<T>当然功能更强大,不过底层还是T[]实现的。