C# プログラミング すぐに現場で使える知識

Part1 C# の文法 速攻入門

気になったところ。クエリ式と展開結果。クエリ式、C#の文法から逸脱している気がして気に入らなかったけど、簡潔は簡潔だなと感じた。

using System;
using System.Linq;

namespace Genba.Part1
{
    public class Chapter3
    {
        public static void Run()
        {
            Part3_13();
        }

        private static void Part3_13()
        {
            var nums = new int[] { 1, 2, 3, 4, 5 };
            var objects = new object[] { 1, 2, 3, 4, 5 };

            var q1 =
                from int x in objects
                from y in nums
                select new { x, y };

            var q2 = objects
                .Cast<int>()
                .SelectMany(x => nums, (x, y) => new { x, y });

            Console.WriteLine("q1");
            foreach (var item in q1) {
                Console.WriteLine(item);
            }

            Console.WriteLine("q2");
            foreach (var item in q2) {
                Console.WriteLine(item);
            }
        }
    }
}