以下是一些选项:
根据原始列表创建一个新列表并过滤掉 0 值:
var newList = originalList.Where(i => i != 0).ToList();
Run Code Online (Sandbox Code Playgroud)
修改原列表:
originalList.RemoveAll(i => i == 0);
Run Code Online (Sandbox Code Playgroud)
老派的、痛苦的方式(对于搞笑者来说):
for (int i = 0; i < originalList.Length; i++)
{
if (originalList[i] == 0)
{
originalList.RemoveAt(i);
i--;
}
}
Run Code Online (Sandbox Code Playgroud)
真正低效的是重复遍历列表的方式(不要这样做):
while (originalList.Remove(0)) { }
Run Code Online (Sandbox Code Playgroud)