数组是一种基本的数据结构,用于在单个变量下存储固定大小的相同类型元素的顺序集合。在 C# 中,数组是一种引用类型,可以用于存储多个数据项。
理解数组
数组的定义
数组是一种数据结构,它可以存储一系列相同类型的元素。在 C# 中,数组的索引从 0 开始。
数组的声明
在 C# 中,声明数组的语法如下:
dataType[] arrayName;
例如:
int[] numbers;
string[] names;
数组的初始化
数组的初始化可以在声明时进行,也可以在声明后进行。
int[] numbers = new int[5]; // 声明一个包含5个整数的数组
string[] names = { "Alice", "Bob", "Charlie" }; // 声明并初始化一个字符串数组
数组的访问
访问数组中的元素通过索引进行:
int firstNumber = numbers[0]; // 访问第一个元素
string firstNames = names[0]; // 访问第一个名字
数组的特点
固定大小
一旦数组被创建,它的大小就是固定的,不能增加或减少。
同类型元素
数组只能存储同一数据类型的元素。
随机访问
数组支持通过索引随机访问元素,访问速度快。
数组的应用场景
数据集合
当你需要存储一组相同类型的数据时,如学生的成绩列表。
缓存机制
当你需要缓存数据以便快速访问时,如图像处理中的像素数据。
查找表
当你需要通过索引快速查找数据时,如键盘字符与其 ASCII 值的映射。
临时存储
当你需要临时存储数据进行处理时,如排序算法中的辅助数组。
数组的例子
基本数组操作
namespace App08
{
internal class Program
{
static void Main(string[] args)
{
// 声明并初始化一个整数数组
int[] scores = newint[] { 90, 85, 80, 75, 70 };
// 遍历数组
for (int i = 0; i < scores.Length; i++)
{
Console.WriteLine(scores[i]);
}
// 使用 foreach 遍历数组
foreach (int score in scores)
{
Console.WriteLine(score);
}
// 修改数组元素
scores[2] = 82;
// 多维数组
int[,] matrix = newint[3, 3] {
{ 1, 2, 3 },
{ 4, 5, 6 },
{ 7, 8, 9 }
};
// 遍历二维数组
for (int i = 0; i < matrix.GetLength(0); i++)
{
for (int j = 0; j < matrix.GetLength(1); j++)
{
Console.Write(matrix[i, j] + " ");
}
Console.WriteLine();
}
}
}
}
数组作为方法参数
namespace App08
{
internal class Program
{
static void Main(string[] args)
{
// 定义一个计算数组元素总和的方法
static int Sum(int[] arr)
{
int sum = 0;
foreach (int item in arr)
{
sum += item;
}
return sum;
}
// 调用方法
int[] numbers = { 1, 2, 3, 4, 5 };
int total = Sum(numbers);
Console.WriteLine("Total: " + total);
}
}
}

数组的排序和搜索
namespace App08
{
internal class Program
{
static void Main(string[] args)
{
// 排序数组
int[] nums = { 3, 1, 4, 1, 5, 9 };
Array.Sort(nums);
// 搜索数组
int index = Array.IndexOf(nums, 4);
Console.WriteLine("Index of 4: " + index);
}
}
}

总结
数组是 C# 中一种非常重要的数据结构,它提供了一种有效的方式来存储和访问一系列相同类型的数据。虽然数组具有固定大小的限制,但它们在许多编程情境中是不可或缺的,特别是在需要快速按索引访问数据时。通过本课程的学习,你应该能够理解数组的基本概念、特点和应用场景,并能够在 C# 程序中有效地使用数组。
阅读原文:原文链接
该文章在 2025/3/24 17:21:01 编辑过