现在的位置: 首页 > 综合 > 正文

201008 学习记录:数组声明

2013年04月02日 ⁄ 综合 ⁄ 共 1184字 ⁄ 字号 评论关闭

某一天忽然发现自己连基础的数组声明都不是很清楚................... Orz

查了一下,普通的数组在声明的时候都要指定范围的,不能动态声明留待之后随意使用。想使用动态维数的话,需要定义那种list之类的数据格式....


 

声明一个数组:
int[] array = new int[5];

string[] stringArray = new string[6];
初始化一个数组:
int[] array1 = new int[5] { 1, 3, 5, 7, 9 };
string[] weekDays = new string[] { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };



如果在声明数组时将其初始化,则可以使用下列快捷方式:
C#
int[] array2 = { 1, 3, 5, 7, 9 };
string[] weekDays2 = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };


可以声明一个数组变量但不将其初始化,但在将数组分配给此变量时必须使用 new 运算符。例如:
int[] array3;
array3 = new int[] { 1, 3, 5, 7, 9 }; // OK
//array3 = {1, 3, 5, 7, 9}; // Error

string[] a = new string[] { };
a[0] = "we"; //错!在new的时候没有指定大小,默认是0个元素,所以对其任意一个元素赋值都是越界.

值类型数组和引用类型数组
请看下列数组声明:
C#
SomeType[] array4 = new SomeType[10];

该语句的结果取决于 SomeType 是值类型还是引用类型。如果是值类型,则该语句将创建一个由 10 个 SomeType 类型的实例组成的数组。如果 SomeType 是引用类型,则该语句将创建一个由 10 个元素组成的数组,其中每个元素都初始化为空引用。

有关值类型和引用类型的更多信息,请参见类型(C# 参考)。

 ================================================== 

C#中声明一个不确定长度的数组

先添加集合类的命名空间:using System.Collections

1.在C#中,数组一般用来存放大小确定的数据.
如果数组大小未知,建议使用List<>.

List<string> a=new List<string>();
a.Add("we");
MessageBox.Show(a[0]);

同时,你可以用a.ToArray()来随时转换成string[].
也可以List<string> b=new List<string>(a.ToArray());将数组数据初始化进List<>

 2.

也可以用List的ArrayList,例如:

List list = new ArrayList();

//用add()的方法增加元素

list.add(你的元素);

抱歉!评论已关闭.