這可能是一個基本問題,但爲什麼在將值類型列表傳遞到泛型方法時,我無法將泛型類型轉換回原始類型?爲什麼我不能將泛型類型轉換爲值類型
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
}
}
我wouldnt推薦轉換。在這種情況下,它將在對象上調用ToString,然後解析它。而你不知道T可以藏起來。 – Euphoric 2011-03-05 22:41:00