Array.ConvertAllメソッドを使うことで、配列内の全要素の値を変換することが出来ます。 このメソッドでは、変換処理を記述したメソッドをConverterデリゲートの形式で指定することで、その処理を配列内の全要素に適用し、その結果を格納した配列を取得することが出来ます。
このメソッドを使うことにより、ある配列を別の型の配列に変換したり、全要素に同じ関数を適用して値を変換する事が出来ます。
Array.ConvertAllメソッドを使って文字列型配列を数値型配列に変換する
using System;
class Sample {
// 文字列を数値に変換するメソッド
static int ToInt(string str)
{
return int.Parse(str); // 数値として不正な文字列等の処理については省略
}
static void Main()
{
string[] strings = {"0", "1", "2", "3"};
// 文字列型配列内のすべての要素を数値に変換する
var ints = Array.ConvertAll(strings, ToInt);
foreach (var i in ints) {
Console.Write("{0}, ", i);
}
Console.WriteLine();
}
}
実行結果
0, 1, 2, 3,