参考 博主 Array 和 [] 的区别 的文章
一直在用 string[] ,int[] 等形式的数组
现在探究一下[ ] 和Array 的区别, 字面意思 Array 就是数组的意思
官方API中Array是一个抽象类,所以无法实例化,无法通过实例化创建一个Array对象
必须通过 Array arr = Array.CreateInstance(typeof(string),3)//类型,数组长度
当然还有很多其他类有ToArray() 的方法生成Array对象 ,比如:
var res ="14351344".ToArray();
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class Array : ICloneable, System.Collections.IList, System.Collections.IStructuralComparable, System.Collections.IStructuralEquatable
Array类官方描述:
提供创建,操作,搜索和排序数组的方法,从而充当公共语言运行库中所有数组的基类。
Array的用法:
Array arr = Array.CreateInstance(typeof(string),3);
arr.SetValue("lzd1", 0);
arr.SetValue("lzd2", 1);
arr.SetValue("lzd3", 2);
for (int i = 0; i < arr.Length; i++)
{
Console.WriteLine(arr.GetValue(i));
}
感觉并没有[] 方便
Sort()方法Array类中特有的排序方法. [] 中没有,可以将[]对象 .ToArray()再进行排序操作
另外就是 Array中 属性和方法特别丰富:
所以Array 还是有可取之处
总结:Array 和[] 都需要指定类型和数组长度