项目需要进行某些操作的时候 需要 遍历移出Stack
刚开始
Debug.Log("清空前:" + intStack.Count);
int _number = intStack.Count;
for (int i = 0; i < intStack.Count; i++)
{
int _int = intStack.Pop();
Debug.Log("_int:" + _int);
}
Debug.Log("清空后个数:" + intStack.Count);
每次都无法完全清空,最后多次测试,终于找到了原因:
问题处在这里 for (int i = 0; i < intStack.Count; i++)
没intStack.Pop();一次 intStack.Count都会有变化
改成
int _number = intStack.Count;
for (int i = 0; i < intStack.Count; i++)
{
int _int = intStack.Pop();
Debug.Log("_int:" + _int);
}
即可

浙公网安备 33010602011771号