C# 数组

与其他编程语言一样,C# 也支持数组。数组是连续内存位置的固定大小的顺序集合,用于存储相同类型的数据。数组中的每个元素对应一个索引值,从 0 开始按顺序递增。您可以通过索引访问数组中的指定元素。

如果要存储 100 名学生的分数,使用常规变量可能需要定义 100 个整数变量,例如 number0、number1、…、number99。使用数组时要容易得多。只需定义一个长度为100的整数数组,例如numbers,使用numbers[0]、numbers[1]、…、numbers[99]。 ] ( [ ]数字是数组索引)来访问数组中的每个元素。

所有数组都是由连续的内存位置组成,最低内存地址对应第一个元素,最高内存地址对应最后一个元素,如下图所示。

1.声明一个数组

在 C# 中声明数组的语法是:

data_type[] array_name;

其中,data_type用于指定数组中元素的类型, [ ]用于指定数组的维度,array_name为数组的名称。

示例代码如下。

int[] array1          
double[] array2   

2.初始化数组

仅仅声明一个数组是不够的。数组只能在初始化后才能为其每个元素赋值。数组是引用类型,因此您需要使用 new 关键字初始化它们,如下所示:

int[] array1                 
array1 = new int[10]      
double[] array2          
array2 = new double[5] 

此外,您可以同时声明和初始化数组,如下所示:

int[] array1 = new int[10] 
double[] array2 = new double[5]

提示:在数组初始化过程中,new int[10]的[ ]中的数字代表数组长度,即数组可以存储的最大元素个数,可以设置长度。如有必要,可以使用数组。

3.给数组元素赋值

您可以使用数组索引为数组中的每个元素分配一个值,如下所示:

int[] arr = new int[10];
arr[0] = 10;
arr[1] = 11;

单独为数组的每个元素赋值是很乏味的。也可以在声明数组时直接给数组赋值。您所要做的就是按顺序将数组的每个元素放入{ }中。 ,使用每个元素,其分开,如下所示:

double[] arr1 = {96.5, 98.0, 99.5, 90.0};
int[] arr2 = {1, 2, 3, 4, 5, 6, 7, 8, 9};

使用上面的方法,不需要提前设置数组的长度,但是如果想指定数组的长度怎么办?请按以下步骤操作:

double[] arr1 = new double[4]{96.5, 98.0, 99.5, 90.0};
int[] arr2 = new int[10]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};

当然,你也可以省略数组长度,如下所示:

double[] arr1 = new double[]{96.5, 98.0, 99.5, 90.0};
int[] arr2 = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};

数组也可以像变量一样,定义的数组用于将值赋给另一个相同类型的数组。在这种情况下,两个数组指向相同的内存地址,如下所示。

int[] arr1 = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int[] arr2 = arr1;

提示:创建数组时,C# 编译器会根据数组类型隐式初始化数组中每个元素的默认值。例如,int 类型数组中的所有元素都初始化为 0。

4. 访问数组中的元素

您可以通过数组索引(也称为下标)访问数组中的指定元素,如下所示。只需在数组名称后添加方括号[ ]并输入相应的数组索引即可。

int[] arr = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int a = arr[0];

[示例] 下面的示例展示了如何访问数组中的每个元素。

 using System;

namespace it-kiso.com
{
    class Demo
    {
        static void Main(string[] args){
            int[] arr = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
            for(int i = 0; i < 10; i++){
                Console.WriteLine("arr[{0}] = {1}", i, arr[i]);
            }
            Console.ReadLine();
        }
    }
} 

操作的结果将是:

arr[0] = 0
arr[1] = 1
arr[2] = 2
arr[3] = 3
arr[4] = 4
arr[5] = 5
arr[6] = 6
arr[7] = 7
arr[8] = 8
arr[9] = 9

5.使用foreach遍历数组

在前面的示例中,我们使用 for 循环来访问数组中的每个元素。此外,您可以使用 foreach 循环来遍历数组中的元素。示例代码如下。

 using System;

namespace it-kiso.com
{
    class Demo{
        static void Main(string[] args){
            int[] arr = new int[]{100, 101, 102, 103, 104, 105, 106, 107, 108, 109};
            int index = 0;
            foreach(int i in arr){
                Console.WriteLine("arr[{0}] = {1}", index, i);
                index++;
            }
            Console.ReadLine();
        }
    }
} 

操作的结果将是:

arr[0] = 100
arr[1] = 101
arr[2] = 102
arr[3] = 103
arr[4] = 104
arr[5] = 105
arr[6] = 106
arr[7] = 107
arr[8] = 108
arr[9] = 109

通俗易懂的《C#数组》讲解!您必须观看的 2 个最佳视频

【9分で解説】はじめてのC# 丁寧に学ぶC#入門⑭【配列】
https://www.youtube.com/watch?v=fw8vE_yAFsQ
与其他编程语言一样,C# 也支持数组。数组是连续内存位置的固定大小的顺序集合,用于存储相同类型的数据。数组中的每个元素对应一个索引值,从 0 开始按顺序递增。您可以通过索引访问数组中的指定元素。

如果要存储 100 名学生的分数,使用常规变量可能需要定义 100 个整数变量,例如 number0、number1、…、number99。使用数组时要容易得多。只需定义一个长度为100的整数数组,例如numbers,使用numbers[0]、numbers[1]、…、numbers[99]。 ] ( [ ]数字是数组索引)来访问数组中的每个元素。

所有数组都是由连续的内存位置组成,最低内存地址对应第一个元素,最高内存地址对应最后一个元素,如下图所示。

1.声明一个数组

在 C# 中声明数组的语法是:

data_type[] array_name;

其中,data_type用于指定数组中元素的类型, [ ]用于指定数组的维度,array_name为数组的名称。

示例代码如下。

int[] array1          
double[] array2   

2.初始化数组

仅仅声明一个数组是不够的。数组只能在初始化后才能为其每个元素赋值。数组是引用类型,因此您需要使用 new 关键字初始化它们,如下所示:

int[] array1                 
array1 = new int[10]      
double[] array2          
array2 = new double[5] 

此外,您可以同时声明和初始化数组,如下所示:

int[] array1 = new int[10] 
double[] array2 = new double[5]

提示:在数组初始化过程中,new int[10]的[ ]中的数字代表数组长度,即数组可以存储的最大元素个数,可以设置长度。如有必要,可以使用数组。

3.给数组元素赋值

您可以使用数组索引为数组中的每个元素分配一个值,如下所示:

int[] arr = new int[10];
arr[0] = 10;
arr[1] = 11;

单独为数组的每个元素赋值是很乏味的。也可以在声明数组时直接给数组赋值。您所要做的就是按顺序将数组的每个元素放入{ }中。 ,使用每个元素,其分开,如下所示:

double[] arr1 = {96.5, 98.0, 99.5, 90.0};
int[] arr2 = {1, 2, 3, 4, 5, 6, 7, 8, 9};

使用上面的方法,不需要提前设置数组的长度,但是如果想指定数组的长度怎么办?请按以下步骤操作:

double[] arr1 = new double[4]{96.5, 98.0, 99.5, 90.0};
int[] arr2 = new int[10]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};

当然,你也可以省略数组长度,如下所示:

double[] arr1 = new double[]{96.5, 98.0, 99.5, 90.0};
int[] arr2 = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};

数组也可以像变量一样,定义的数组用于将值赋给另一个相同类型的数组。在这种情况下,两个数组指向相同的内存地址,如下所示。

int[] arr1 = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int[] arr2 = arr1;

提示:创建数组时,C# 编译器会根据数组类型隐式初始化数组中每个元素的默认值。例如,int 类型数组中的所有元素都初始化为 0。

4. 访问数组中的元素

您可以通过数组索引(也称为下标)访问数组中的指定元素,如下所示。只需在数组名称后添加方括号[ ]并输入相应的数组索引即可。

int[] arr = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int a = arr[0];

[示例] 下面的示例展示了如何访问数组中的每个元素。

 using System;

namespace it-kiso.com
{
    class Demo
    {
        static void Main(string[] args){
            int[] arr = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
            for(int i = 0; i < 10; i++){
                Console.WriteLine("arr[{0}] = {1}", i, arr[i]);
            }
            Console.ReadLine();
        }
    }
} 

操作的结果将是:

arr[0] = 0
arr[1] = 1
arr[2] = 2
arr[3] = 3
arr[4] = 4
arr[5] = 5
arr[6] = 6
arr[7] = 7
arr[8] = 8
arr[9] = 9

5.使用foreach遍历数组

在前面的示例中,我们使用 for 循环来访问数组中的每个元素。此外,您可以使用 foreach 循环来遍历数组中的元素。示例代码如下。

 using System;

namespace it-kiso.com
{
    class Demo{
        static void Main(string[] args){
            int[] arr = new int[]{100, 101, 102, 103, 104, 105, 106, 107, 108, 109};
            int index = 0;
            foreach(int i in arr){
                Console.WriteLine("arr[{0}] = {1}", index, i);
                index++;
            }
            Console.ReadLine();
        }
    }
} 

操作的结果将是:

arr[0] = 100
arr[1] = 101
arr[2] = 102
arr[3] = 103
arr[4] = 104
arr[5] = 105
arr[6] = 106
arr[7] = 107
arr[8] = 108
arr[9] = 109

通俗易懂的《C#数组》讲解!您必须观看的 2 个最佳视频

【9分で解説】はじめてのC# 丁寧に学ぶC#入門⑭【配列】
https://www.youtube.com/watch?v=fw8vE_yAFsQ