Menu
CoddyTech

数组方法

本课属于 Coddy C# 学习旅程的“基础知识”单元。第 58 课,共 69 课。

数组有很多方法(功能)。要调用一个方法,请这样写:

Array.MethodName(arrayName, otherParameters)

常用数组方法:

Clear(array, index, length):清除数组中的元素,将一段范围内的元素设为零、false 或 null:

int[] numbers = {1, 2, 3, 4, 5};
Array.Clear(numbers, 1, 3);
// numbers 将变为 {1, 0, 0, 0, 5}

Reverse(array) - 反转数组中元素的顺序:

int[] numbers = {1, 2, 3, 4, 5};
Array.Reverse(numbers);
// numbers 将变为 {5, 4, 3, 2, 1}

Sort(array) - 按升序排列数组中的元素:

int[] numbers = {5, 2, 9, 1, 5, 6};
Array.Sort(numbers);
// numbers 将变为 {1, 2, 5, 5, 6, 9}

Copy(sourceArray, sourceIndex, destinationArray, destinationIndex, length),将一段元素从一个数组复制到另一个数组:

int[] source = {1, 2, 3, 4, 5};
int[] destination = new int[5];
Array.Copy(source, 0, destination, 0, 5);
// destination 将是 {1, 2, 3, 4, 5}

位置不同的示例:

int[] source = {1, 2, 3, 4, 5};
int[] destination = new int[7];
Array.Copy(source, 1, destination, 2, 3);
// destination 将是 {0, 0, 2, 3, 4, 0, 0}
// 从 source 的索引 1 开始,复制元素 2、3、4
// 从 destination 的索引 2 开始放入这些元素
challenge icon

挑战

简单

创建一个名为 Merge 的方法,接收两个数组作为参数。该方法将两个数组合并为一个已排序的数组并返回。

例如,传入以下参数:Merge(new string[] {"1", "4", "2"}, new string[] {"2", "5", "9"}),将返回 ["1", "2", "2", "4", "5", "9"]

使用 Array.Copy() 将元素从一个数组复制到另一个数组。语法如下: 

Array.Copy(sourceArray, sourceStartPosition, destinationArray, destinationStartPosition, length)

例如:

// Source array
string[] sourceArray = {"1", "2", "3", "4", "5"};

// Destination array
string[] destinationArray = new string[5];

// Copy elements from sourceArray to destinationArray
Array.Copy(sourceArray, 0, destinationArray, 0, 5);

复制后的目标数组:1 2 3 4 5

亲手试试

using System;


public class Program {
    public static string[] Merge(string[] arr1, string[] arr2) {
        string[] result = new string[arr1.Length + arr2.Length];
        // 将 arr1 和 arr2 复制到 result 中,然后对 result 排序

        return result;
    }

    public static void Main(string[] args) {
        string textArr1 = Console.ReadLine();
        string textArr2 = Console.ReadLine();
        string[] arr1 = textArr1.Split(",");
        string[] arr2 = textArr2.Split(",");

        string[] mergedArray = Merge(arr1, arr2);
        Console.WriteLine(string.Join(", ", mergedArray));
    }
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课

自己练习: C# 在线编译器