2014年09月29日
川俣晶の縁側ソフトウェア技術雑記 total 4159 count

C#でどの書き方が良いのか

Written By: 川俣 晶連絡先

「数値からアルファベット小文字26文字に変換してみる関数を何種類か書いてみた」

「うん」

「このコードはa,b,c,dのどれが良いか?」

    static void a(int x)

    {

        var alpha = "abcdefghjijklmnopqrstuvwxyz";

        Console.WriteLine(alpha[x]);

    }

    static void b(int x)

    {

        Console.WriteLine((char)(x+'a'));

    }

    static void c(int x)

    {

        var alpha = Enumerable.Range('a',26).Select(c=>(char)c);

        Console.WriteLine(alpha.ElementAt(x));

    }

    static void d(int x)

    {

        var table = new Tuple<int,char>[]

        {

            new Tuple<int,char>(0,'a'),

            new Tuple<int,char>(1,'b'),

            new Tuple<int,char>(2,'c'),

            new Tuple<int,char>(3,'d'),

            // 以下'z'まで続く

        };

        Console.WriteLine(table.First(c=>c.Item1 == x).Item2);

    }

「どれがいいの?」

「これは、近々出てくる某本のために書いたサンプルコード。どんな本が出てくるのかは発表されるまでお楽しみに」

「宣伝かよ」

「自分ならどれを選ぶか考えておいて、後から本を買って読んでみて答え合わせをしてみよう。まだ発表もされていない本だから考える時間はたっぷりあるよ」