C#常用数据结构之数组Array
什么是数组
在C#中,数组是一种数据结构,它可以用于存储具有相同数据类型的多个元素。数组中的元素可以通过下标来访问,数组下标从0开始,最大下标为数组长度-1。
声明和初始化数组
声明数组
声明数组需要指定数据类型和数组名称,括号中指定数组的容量。例如,声明一个包含5个整数的数组:
int[] arr = new int[5];
初始化数组
可以通过循环逐个赋值,或使用数组初始化器,直接将一组值赋给数组的元素。例如:
int[] arr = new int[5];
// 循环赋值
for (int i = 0; i < arr.Length; i++)
{
arr[i] = i + 1;
}
// 数组初始化器
int[] arr2 = new int[] { 1, 2, 3, 4, 5 }; // 或写成 int[] arr2 = { 1, 2, 3, 4, 5 };
访问数组元素
可以通过下标来访问数组元素。例如,访问第3个元素:
int[] arr = { 1, 2, 3, 4, 5 };
int x = arr[2]; // x的值是3
数组的常用方法
Length属性
可以使用Length属性来获取数组的元素个数。例如:
int[] arr = new int[5];
int x = arr.Length; // x的值是5
Copy方法
可以使用Copy方法来复制数组,该方法有两个参数,第一个参数是目标数组,第二个参数是要复制的元素数。例如:
int[] arr = { 1, 2, 3, 4, 5 };
int[] arr2 = new int[5];
Array.Copy(arr, arr2, 5);
Sort方法
可以使用Sort方法来对数组元素排序。例如:
int[] arr = { 3, 1, 5, 4, 2 };
Array.Sort(arr);
示例
示例1: 求平均数
以下是一个示例程序,演示如何使用数组求一组数的平均数。
using System;
class Program
{
static void Main()
{
int[] arr = { 1, 2, 3, 4, 5 };
int sum = 0;
for (int i = 0; i < arr.Length; i++)
{
sum += arr[i];
}
double avg = (double)sum / arr.Length;
Console.WriteLine($"平均数是{avg}");
}
}
示例2: 去重
以下是一个示例程序,演示如何使用数组去重。
using System;
class Program
{
static void Main()
{
int[] arr = { 1, 2, 1, 3, 2, 4, 5 };
int[] arr2 = new int[arr.Length];
int index = 0;
for (int i = 0; i < arr.Length; i++)
{
if (!Contains(arr2, arr[i]))
{
arr2[index++] = arr[i];
}
}
Array.Resize(ref arr2, index);
Console.WriteLine(string.Join(",", arr2)); // 输出1,2,3,4,5
}
// 判断数组中是否包含指定的元素
static bool Contains(int[] arr, int num)
{
for (int i = 0; i < arr.Length; i++)
{
if (arr[i] == num)
{
return true;
}
}
return false;
}
}
以上是关于C#常用数据结构之数组Array的完整攻略,它包含了数组的声明和初始化、访问数组元素、常用方法及两个数组的示例说明。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#常用数据结构之数组Array - Python技术站