IEnumerable<int>
があり、これらをASCII相当の文字に変換したいとします。IEnumerable.Select()でのキャスト対IEnumerable.Cast()
単一の整数の場合、それはちょうど(char)i
になるので、常にcollection.Select(i => (char)i)
ですが、それはcollection.Cast()
を使用するのが少しお勧めです。
私がcollection.Cast<char>()
を使用したときにInvalidCastException
を取得する理由は誰でも説明できますが、collection.Select(i => (char)i)
では使用できません。
編集:面白いことに、私がcollection.OfType<char>()
と呼ぶとき、私は空のセットを得る。
ありがとうございました!ちょっと直感的ですが、意味があります – hehewaffles
Jon Skeetのブログへのリンクが壊れているようです。別の方法があります:http://edulinq.googlecode.com/hg/posts/33-CastAndOfType.html –
@TylerGill、このリンクも壊れています – 3per