C# 数组类
C# 数组类
C# 提供了一个Array 类来处理与数组相关的操作。它提供了创建、操作、搜索和排序数组元素的方法。此类用作 .NET 编程环境中所有数组的基类。
C# Array class Signature
[SerializableAttribute]
[ComVisibleAttribute(true)]
public abstract class Array : ICloneable, IList, ICollection,
IEnumerable, IStructuralComparable, IStructuralEquatable
注意: 在 C# 中,Array 不是集合的一部分,而是被视为集合,因为它基于 IList 接口。
C# 数组属性
属性 |
说明 |
IsFixedSize |
用于获取表示Array是否有固定大小的值。 |
IsReadOnly |
用于检查Array是否为只读。 |
IsSynchronized |
用于检查对Array的访问是否同步。 |
Length |
用于获取Array所有维度的元素总数。 |
LongLength |
用于获取一个64位整数,表示Array所有维度的元素总数。 |
Rank |
用于获取数组的秩(维数)。 |
SyncRoot |
用于获取可用于同步访问Array的对象。 |
C# 数组方法
方法 |
说明 |
AsReadOnly<T>(T[]) |
它返回指定数组的只读包装器。 |
BinarySearch(Array,Int32,Int32,Object) |
用于在一个一维排序数组中的一系列元素中搜索一个值。 |
BinarySearch(Array,Object) |
用于在整个一维排序数组中搜索特定元素。 |
Clear(Array,Int32,Int32) |
用于将数组中的某个范围的元素设置为默认值。 |
Clone() |
用于创建数组的浅拷贝。 |
Copy(Array,Array,Int32) |
用于通过指定起始索引将一个数组的元素复制到另一个数组中。 |
CopyTo(Array,Int32) |
从指定的目标数组索引开始,将当前一维数组的所有元素复制到指定的一维数组中 |
CreateInstance(Type,Int32) |
用于创建指定Type和长度的一维Array。 |
Empty<T>() |
用于返回一个空数组。 |
Finalize() |
用于释放资源和执行清理操作。 |
Find<T>(T[],Predicate<T>) |
用于搜索与指定谓词定义的条件匹配的元素。 |
IndexOf(Array,Object) |
用于搜索指定的对象并返回其在一维数组中第一次出现的索引。 |
Initialize() |
用于通过调用值类型的默认构造函数来初始化值类型数组的每个元素。 |
Reverse(Array) |
用于反转整个一维数组中元素的顺序。 |
Sort(Array) |
用于对整个一维数组中的元素进行排序。 |
ToString() |
用于返回代表当前对象的字符串。 |
C# 数组示例
using System;
namespace CSharpProgram
{
class Program
{
static void Main(string[] args)
{
// Creating an array
int[] arr = new int[6] { 5, 8, 9, 25, 0, 7 };
// Creating an empty array
int[] arr2 = new int[6];
// Displaying length of array
Console.WriteLine("length of first array: "+arr.Length);
// Sorting array
Array.Sort(arr);
Console.Write("First array elements: ");
// Displaying sorted array
PrintArray(arr);
// Finding index of an array element
Console.WriteLine("\nIndex position of 25 is "+Array.IndexOf(arr,25));
// Coping first array to empty array
Array.Copy(arr, arr2, arr.Length);
Console.Write("Second array elements: ");
// Displaying second array
PrintArray(arr2);
Array.Reverse(arr);
Console.Write("\nFirst Array elements in reverse order: ");
PrintArray(arr);
}
// User defined method for iterating array elements
static void PrintArray(int[] arr)
{
foreach (Object elem in arr)
{
Console.Write(elem+" ");
}
}
}
}
输出:
length of first array: 6
First array elements: 0 5 7 8 9 25
Index position of 25 is 5
Second array elements: 0 5 7 8 9 25
First Array elements in reverse order: 25 9 8 7 5 0