这篇文章给大家介绍C#中如何初始化数组,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
C#数组初始化
1、int[] iArray = new int[3]{2, 3, 4} 花括号被称为数组初始化器,数组初始化器只能在声明数组变量时使用,不能在声明数组之后使用C#数组初始化,还可以不指定数组的大小 int[] iArray = new int[]{2, 3, 4} 编译器会自动计算,使用C#编译器还有一种更简化的形式 int[] iArray = {2, 3, 4};
2、分清数组维数和每一维长度(上下界)的区别;
3、用括号声明数组是C#中使用Array类的记号,在后台使用C#语法,会创建一个派生于基础Array的新类。这样,就可以使用Array类为每个C#数组定义的方法和属性了。例如Length属性,还可以使用foreach语句迭代数组,其实这是使用了Array类中的GetEnumerator()方法,或者说在Array类中实现了枚举器。
4、Array类是一个抽象类,不能使用构造函数来创建数组,但除了可以使用C#语法创建数组实例外,还可以使用它的CreateInstance()静态方法创建数组,如果事先不知道元素类型,或者想创建索引不基于0的数组,就可以使用改静态方法。
5、数组是引用类型,所以将一个数组赋予另一个数组变量,就会得到两个指向同一个数组的变量。而复制数组实现ICloneable接口。这个接口定义的Clone()方法会创建(无需创建新数组则使用CopyTo方法或Array.Copy())一个数组的浅副本,也就是说,如果数组元素是值类型,就会复制所有的值,如果数组包含的是引用类型,则不复制元素本身,而只是复制引用。如果需要包含引用类型的数组的深副本,就必须迭代数组,创建新对象。
6、Array类实现了对数组中元素的冒泡排序。Sort()方法需要数组中的元素实现IComparable接口。简单类型,如String和Int32实现了IComparable接口(升序)。调用语法为Array.Sort(...)
7、类对象如果需要在数组或集合中能够被排序,就必须实现ICompable接口,这个接口定义了一个方法CompareTo();但如果排序的方式比较复杂,如需要对哪个字段进行排序,是升序还是降序,或者不能修改类的定义,则可以针对该类定义一个IComparer接口,在调用数组或集合的Sort()方法时执行它,IComparer接口定义了Compare()方法。
8、Array类实现了IEumerable、ICollection和IList接口,ICollection接口派生于IEnumerable,IList派生于ICollection。以上介绍C#数组初始化。
关于C#中如何初始化数组就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。