首页 > 代码库 > List<string>与string[]

List<string>与string[]

一、是什么?

     List<>是一个泛型对象,实例化后相当于是一个List对象。List对象内部可以聚合若干个(理论上不限制大小)同类型对象,并提供很多方便的方法来提供一些基本操作,可以理解为一个封装好的链表对象

     string[]就是简单的强类型化数组。     

二、区别和联系

    区别

         string[]表示字符串数组,创建后大小固定,不能改变元素的个数。

         List<string>表示泛型集合,集合中的每个元素都是字符串,创建后可以动态改变元素的个数。

   联系:

         二者都可以存储数据并且二者可以相互转化,通过.ToList()转化为集合;.ToArray()转化为数组。如:

<span style="font-size:18px;">从System.String[]转到List<System.String>
 
System.String[]str={"str","string","abc"};
 
List<System.String>listS=new List<System.String>(str);</span>

从List<System.String>转到System.String[]
 
List<System.String>listS=new List<System.String>();
 
listS.Add("str");
 
listS.Add("hello");
 
System.String[] str=listS.ToArray();
 

三、优缺点

        List优点:

       作为泛型集合本身就具有强大的功能,如:

       1)类型安全

       2)不用频繁的拆箱装箱

       3)更灵活和方便

       List缺点:开销大

        

       string[]优点

      1)如果元素比较固定和少,用string[]更加灵活和方便

      2)开销相对于list就相对小的多

       string[]缺点

       1)由于其大小固定,如果数据不确定或是庞大就会很不灵活。      

四、总结

        综上所述,不管是list还是string[]都有其优缺点,所以在恰当的地遇到恰当的它们就够了!

List<string>与string[]