C# 数组一

C# 数组

首先数组是一个有序的元素序列。是可以储存一组相同类型的元素,这个数组可以是值类型,也可以是引用类型。

数组创建

int[] array;
这样就定义了一个int 型的数组变量,但并没有分配内存,所以还需要对其进行分配内存,否则会在编译时报错。
在分配内存是,使用 new 关键字,然后跟上类型和数量。在使用数组的时候,必须要清楚数组的数量。
int[] array = new int[5];
这样,array指向了堆中新建的5个内存,如下图请添加图片描述
分配内存后,编译器默认情况下会把每个数组初始化为0,当然也可以直接复制

int[] array = new int[] { 1, 2, 3, 4, 5};
int[] array = { 1, 2, 3, 4, 5};

这样都是可以的。
除此之外,我们还可以创建自定义类型的数组。

public class ConstomTest
{
    public int value;
    public void Print()
    {
        Console.WriteLine("value = {0}", value);
    }
}
class Program
{
    static void Main(string[] args)
    {
        ConstomTest[] test = new ConstomTest[2];
        Console.ReadKey();
    }
}

与预定义类型是一致的。

数组遍历

数组的遍历可以直接通过 Length来获取数组的长度,再用for语句依次输出,注:数组的下标是从0开始的

int[] array = new int[] { 1, 2, 3, 4, 5 };
for (int i = 0; i < array.Length; i++)
    Console.Write("{0} ", array[i]);

输出结果:
1 2 3 4 5

当然我们也可以用 foreach 关键子来遍历。

int[] array = new int[] { 1, 2, 3, 4, 5 };
foreach (int a in array)
   	Console.Write("{0} ", a);

输出的结果:
1 2 3 4 5
但是使用foreach 的话要注意:在使用foreach期间不可以堆数据进行修改。因为它是foreach的迭代变量。 但可以对该变量中所引用数据进行改变。


版权声明:本文为qq_36361527原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。