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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 甘斌斌 中级黑马   /  2013-6-13 14:01  /  1190 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

请列举List<>的用法?来个简单的例子。

比如我用List<int>test =new List<int>();

那么实例test中的所有方法的类型就是Intma ?

那我什么时候用List<>?他是一个数组集合?

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

4 个回复

正序浏览
List是泛型集合,用法和数组差不多,不过长度是不固定的,比数组方便,但是内部的实现还是用的数组,下面是两个简单的例子:
一:        
   List<int> nums = new List<int>() { 4, 2, 6, 3, 8, 9, 1, 5 };
            int max = nums[0];
            foreach (int i in nums)
            {
                if (max < i)
                {
                    max = i;
                }
            }
            Console.Write(max);

二:奇数偶数分离

            string str = "2 7 8 3 22 9 5 11";
            string[] strs = str.Split(' ');
            List<string> numsJiShu = new List<string>();
            List<string> numsOuShu = new List<string>();
            foreach (string s in strs)
            {
                if (int.Parse(s) % 2 == 0)
                {
                    numsOuShu.Add(s);
                }
                else
                {
                    numsJiShu.Add(s);
                }
            }
            numsJiShu.AddRange(numsOuShu);
            string[] strs2 = numsJiShu.ToArray();
            string str2 = string.Join(" ", strs2);
            Console.WriteLine(str2);

运行一下看看结果你就明白了
回复 使用道具 举报
理解泛型的话你考虑从需求入手是最理想的

首先我想要一个 数组 int[] a=new int[]{1,2}; 很容易得到了

然后我想要一个长度不用一开始就定义的数组arraylist b=new arraylist ();  也很容易

那我想要一个 int类型的 长度可变的数组呢? 没错这个时候 泛型出马了,他减少了 很多装箱拆箱,减少性能损耗
回复 使用道具 举报 1 0
List的基础、常用方法
http://bbs.itheima.com/thread-56169-1-1.html
(出处: 黑马程序员训练营论坛)
我的帖子! 希望对你有帮助!
回复 使用道具 举报
1. 使用集合初始值设定项可以在初始化一个实现了 IEnumerable 的集合类时指定一个或多个元素初始值设定项;
2. 元素初始值设定项可以是简单的值,也可以是表达式或对象初始值设定项。
3. 通过使用集合初始值设定项,将无需在源代码中指定多个对该类的 Add 方法的调用,编译器会添加这些调用。
4. 两个简单的集合初始值设定项:
    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() };
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马