Unity 使用C#List (Clear())出現的問題
阿新 • • 發佈:2019-02-19
C# List 列表在開發中遇到的問題… 真的是很無語
正常使用List 的Clear() 理論上講會把列表清空,,,
我遇到的問題就是清不空…而且不止一次的遇到,,,不知道到底是哪裡出現的問題,,,
解決方法:在需要用Clear() 的時候 重新new一下就沒問題了,,,
問題例項:
//定義...
public Dictionary<int, List<int>> NowOutCards = new Dictionary<int, List<int>>();
//使用
//int[] outcard = JsonMapper.ToObject<int[]>(((JsonData)evt.data)["card"].ToJson());
int[] outcard = new []{1,2};
List<int> tempList = new List<int>();
for (int i = 0; i < outcard.Length; i++)
{
tempList.Add (outcard[i]);
}
tempList.Clear();
tempList.AddRange(tempList);
//記錄...
if (model.NowOutCards.ContainsKey(0))
{
//model.NowOutCards[0] .Clear(); //偶爾會有問題...
model.NowOutCards[0] = new List<int>() ; //解決問題...
model.NowOutCards[0].AddRange(tempList);
}
else
{
model.NowOutCards.Add(0, tempList);
}
不是使用字典(Dictionary)套用List 出的問題,,,之前單單使用List 也出現過這個問題,,,
也不是必出的問題,,,之前用一直好用,,,也許是後期做了哪些操作對其有影響了,,,然後就會偶爾不好用,,,還不知道具體哪裡有問題,,若有知道的大佬,望您不吝賜教。