Преобразования массивов

Преобразования между массивами зависят от их размерности и возможности преобразования между типами элементов.

Неявное преобразование массива S в массив T возможно в том случае, если, во-первых, эти массивы обладают одинаковой размерностью, во-вторых, для ссылок на элементы S существует неявное преобразование в тип T, и, в-третьих, S и T являются ссылочными типами. Другими словами, массив ссылок на класс можно преобразовать в массив типа, являющегося базовым для данного класса.

К явным преобразованиям предъявляются аналогичные требования, за исключением того, что элементы S должны явно преобразовываться к типу элементов T:

using System;

class Test

{

public static void PrintArray(object[] arr)

{

foreach (object obj in arr)

Console.WriteLine("Word: {0}", obj);

}

public static void Main()

{

string s = "I will not buy this record, it is scratched.";

char[] separators = {' '};

string[] words = s.Split(separators);

PrintArray(words);

}

}

В данном примере массив слов (типа string) передается в качестве массива object, поскольку каждый элемент массива может быть преобразован к object.

Предлагаю ознакомиться с аналогичными статьями: