これは、デリゲートとラムダ式を使用して、指定された開始日と終了日から稼働日を取得する簡単なコードです。
私の友人は、プログラム全体を 1 行で書けると言っています。どうすればいいですか?
public delegate void GetWorkingDays(DateTime x,DateTime y);
class Program
{
static void Main(string[] args)
{
var dt1 = new DateTime(2012, 10, 3);
var dt2 = new DateTime(2013, 10, 3);
System.Collections.ArrayList l = new ArrayList();
GetWorkingDays d = (d1, d2) =>
{
while (d1.Date < d2.Date)
{
if(d1.DayOfWeek == DayOfWeek.Saturday)
{
d1 = d1.AddDays(2);
Console.WriteLine();
}
else
{
Console.Write(d1.Day + " ");
d1 = d1.AddDays(1);
}
}
};
d(dt1, dt2);
}
};