List<string> name = new List<string>(5);
其中数字5 有作用吗?(capacity的计算原理)
定义的5影响的是capacity的值,在定义完后,name的capacity值为0,
当添加一个元素时,会向系统申请5个内存,
继续添加元素,当元素个数超过五时,会在申请5个内存,
capacity时list的容量,所以这是此时capacity的值是10,
继续添加元素,当元素个数超过10 时,会在申请10个内存,此时capacity*2;
。。。。
每次申请,capacity的值都*2.
*当定义list时如果没有规定capacity的首次申请值,list会向系统申请4个内存。