C#培训2019-10-15第一课 对List 或者数组中的某个值去除掉 (i--问题)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_41617697/article/details/102598617

利用For循环遍历整个数组,判断数组值是否要被移除,若需要,则直接移除

直接移除如下:

for( i = 0; i< NumberArray.Length ; i++){
	if(满足条件)
	{
		NumberArray.RemoveAt(i);//此时移除后,index应该还是这个,而不是回到for加1
		i--;//因此需要i-1,来保证index正确
	}
}

此时,有一个问题,“ i-- ”的可阅读性比较差,而且i–对index直接操作,比较危险,容易出错。

解决方案:用for循环对数组遍历时,从后往前,这样移除了一个项后,也对下一项没有影响,因为前面的Index没有变化。就避免了“i–”的情况。

如:

for( i = NumberArray.Length; i > 0  ; i--){
	if(满足条件)
	{
		NumberArray.RemoveAt(i);//此时就不需要i--
	}
}

猜你喜欢

转载自blog.csdn.net/qq_41617697/article/details/102598617