A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 风雪再现 中级黑马   /  2013-5-7 18:02  /  4752 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

List<string> str = New List<string>()和 string[] str 之间的用法和区别
主要是List<string> str = New List<string>()的用法,希望给个例子看看,谢谢

点评

注意大小写 new  发表于 2013-5-7 19:28

6 个回复

正序浏览
List<String> str=new List<String>();
可以分开来讲:List 是集合框架中的东西  这个就不详细说了。 后面加了<>  这个就是泛型  类似于 声明一个数组,String[] str   当然,这个是list集合   泛型的作用就是声明后,传什么到list集合中就只能存String (字符串类型)的元素。
回复 使用道具 举报
刘赛 来自手机 中级黑马 2013-5-8 02:20:25
地板
添加元素有不同List str添加元素时是str.Add(" ")而string[]  str直接str=" "
回复 使用道具 举报
1.两个简单的集合初始值设定项:
   List<int> digits = new List<int> { 0, 1, 2, 3, 4, 5, 6, 7,8, 9 };
   List<int> digits2 = new List<int> { 0 + 1, 12 % 3, MakeInt()};

2.初始值设定项使用对象初始值设定项来初始化Cat类的对象。
List<Cat> cats = new List<Cat>
{
    newCat(){ Name="Sylvester", Age=8 },
    newCat(){ Name="Whiskers", Age=2},
    newCat() { Name="Sasha", Age=14}
};
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
如果集合的 Add 方法允许,可以将 null 指定为集合初始值设定项中的一个元素。
List<Cat> moreCats = new List<Cat>
{
    newCat(){ Name="Furrytail", Age=5 },
    newCat(){ Name="Peaches", Age=4},
    null
};

回复 使用道具 举报
又是LZ,...............,LZ举的示例来讲区别不大,主要在于List等Collection集合更多的是用来存储类对象的(即 Person 类 或者其他非数组能存储的对象)。
(上面这句话应该可以很好理解了,不太喜欢贴太多代码,偷懒就贴一句: )   List<Person> list = new ArrayList<Person>();    (Person 是一个类)
这句代码中集合存储的就是数组不能存储的东西。
另外提一点,LZ的代码 :  List<String> str = new List<String>();   编译时是通过不了的,因为List是一个接口,只有类或者接口的子类对象(例如匿名内部类可以被实例化)。
即使是我写的那句也是用了多态的特性(父类引用指向子类对象),正常的写法是: ArrayList<String> al = new ArrayList<String>();      (或者其他的集合类)

评分

参与人数 1技术分 +1 收起 理由
杞文明 + 1

查看全部评分

回复 使用道具 举报
List<string> str = New List<string>()和 string[] str
这两个的区别就是前者是参访String类型的对象的集合接口,而他的具体实现类有ArrayList,Vector,LinkedList;而后者是存放String类型的数据的数组,它跟ArrayList基本上是差不多的。

评分

参与人数 1技术分 +1 收起 理由
杞文明 + 1

查看全部评分

回复 使用道具 举报
  1. string str1="aaa";
  2. string str2="bbb";
  3. string str3="ccc";
  4. List<string> str=new List<string>();
  5. str.add(str1);
  6. str.add(str2);
  7. str.add(str3);
复制代码
List<T>是一个泛型集合!T指的数据类型,跟数组有类似的作用!不过跟数组比起来,泛型集合在遍历元素,添加元素,删除元素方面跟方便!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马