Мне трудно понять, почему компилятор C# может вывести типы для
Array.ConvertAll(new int[1], i => Convert.ToDouble(i));
, но не для
Array.ConvertAll(new int[1], Convert.ToDouble);
, когда кажется, что первое будет более сложным выводом, чем второе.
Кто-нибудь может объяснить, почему это происходит?