public double[] ToArray()
return new double[] { 1, 2 , 3 };
public static void Main()
WithToArray[] weirdThings = new [] { new WithToArray(), new WithToArray() };
double[][] arr = weirdThings.Select(x => x.ToArray()).ToArray();
Console.WriteLine("Type: {0}", arr);
Console.WriteLine("Content of weirdThings: {0}", string.Join<WithToArray>(", ", weirdThings));
int rows = arr.GetLength(0);
for(int i = 0; i < rows; i++) {
for (int j = 0; j < arr[i].Length; j++) {
Console.WriteLine("arr[{0}][{1}]: {2}", i, j, arr[i][j]);