これは基本的な質問かもしれませんが、ジェネリック型をジェネリックメソッドに値型のリストを渡すときに元の型にキャストできません。ジェネリック型を値型にキャストできないのはなぜですか?
IList<int> list = new List<int>() { 1, 2, 3, 4, 5, 6, 7, 8 };
Inverse<int>(list);
public void Inverse<T>(IList<T> list)
{
for (i = 0; i <= list.Count/2; i++)
{
int a = list[i] as Int16; //=> does not work
int b = (int)list[i]; //=> does not work either
}
}
私は変換を勧めません。この場合、オブジェクトのToStringを呼び出して解析します。そして、あなたは帽子Tが隠れることは知りません。 – Euphoric