Предположим, у меня есть IEnumerable<int>
, и я хочу, чтобы они были преобразованы в их ASCII-эквивалентные символы.
Для одного целого числа это будет просто (char)i
, поэтому всегда есть collection.Select(i => (char)i)
, но я подумал, что будет немного лучше использовать collection.Cast()
.
Может кто-нибудь объяснить, почему я получаю InvalidCastException
, когда использую collection.Cast<char>()
, но не с collection.Select(i => (char)i)
?
Редактировать: Интересно, что когда я звоню collection.OfType<char>()
, я получаю пустой набор.