Array.ConvertAllメソッドを使うことで、配列内の全要素の値を変換することが出来ます。 このメソッドでは、変換処理を記述したメソッドをConverterデリゲートの形式で指定することで、その処理を配列内の全要素に適用し、その結果を格納した配列を取得することが出来ます。
このメソッドを使うことにより、ある配列を別の型の配列に変換したり、全要素に同じ関数を適用して値を変換する事が出来ます。
Array.ConvertAllメソッドを使って配列内の全ての値を変換する
using System;
class Sample {
// 度数を弧度に変える
static double ToRadian(double degree)
{
return degree * Math.PI / 180.0;
}
static void Main()
{
double[] degrees = {0.0, 90.0, 180.0, 270.0};
// 配列内の値をすべて弧度に変換する
var radians = Array.ConvertAll(degrees, ToRadian);
foreach (var rad in radians) {
Console.Write("{0}, ", rad);
}
Console.WriteLine();
// 配列を文字列の配列に変換して連結する
Console.WriteLine(string.Join(", ", Array.ConvertAll(degrees, Convert.ToString)));
}
}
実行結果
0, 1.5707963267949, 3.14159265358979, 4.71238898038469, 0, 90, 180, 270