zoukankan      html  css  js  c++  java
  • 泛型List<T>与非泛型ArrayList

      

      ArrayList集合的用处越来越窄了,List应运而生,下来一起来看看吧: 

    static void Main(string[] args)
            {
                // 非泛型集合的不安全性 
    
                ArrayList array = new ArrayList();
                array.Add(1);
                array.Add("string");
                array.Add(false);
    
                array.AddRange(array);
    
                foreach (object obj in array)
                {
                    Console.WriteLine(obj);
                }
    
    }

     

      ArrayList的不安全性一目了然,类型不安全,必将导致各种攻击的产生,

      

     static void Main(string[] args)
            {
    
                //  List<int>
                List<int> list = new List<int>();
                list.Add(1);
                list.Add(2);
    
                foreach (var item in list)
                {
                    Console.WriteLine(item);
                }
            
            }

       相比不安全的ArrayList来说,List<>的类型安全性使得我们定义起来更方便。

      同时:微软还退出了List<T>:   如下:

      

     static void Main(string[] args)
            {
                var test = new MethodOverloads();
                test.Foo(123);
                test.Foo("abcd");
                test.Foo(false);
    
            }
    
    public class MethodOverloads
        {
            public void Foo<T>(T obj)
            {
                Console.WriteLine("Foo<T>(T obj), obj type: {0}", obj.GetType().Name);
            }
        }

        如此一来,我们应该通过这三个小例子来了解真正的List<>有多强大,而且强烈建议使用List<> 而不再使用ArrayList,其中执行效率的差距是很大的。

       其中:List<> 继承自using System.Collections.Generic; 千万不要把强大的 List<T> 作为基类看待呀... 

     

  • 相关阅读:
    java反射机制
    jdbc连接mysql时发出警告:WARN: Establishing SSL connection without server's identity verification is not recommended...
    java,jdbc操作数据库
    vue.js 第十课-第十六课
    vue.js 第九课
    vue.js 第八课
    如何扒代码。。。
    vue.js第七课
    工作总结
    滤镜 filter:gray 变灰色
  • 原文地址:https://www.cnblogs.com/duanshunjie/p/3302558.html
Copyright © 2011-2022 走看看