以下C#代码运行结果是( )。

来源:百度知道 编辑:UC知道 时间:2024/06/01 21:47:22
public void Test()
{
List<int>numbers = new List<int>();
for(int i = 1; i < 6; i++)
{
numbers.Add(i);
}
for(int i =1; i<3; i++)
{
numbers.Remove(i);
}
foreach (int i in numbers)
{
Console.Write (i.ToSring());
}
}
a) 运行出错
b) 345
c) 145
d) 135

for(int i = 1; i < 6; i++)
{
numbers.Add(i);
}
上面是添加1、2、3、4、5
for(int i =1; i<3; i++)
{
numbers.Remove(i);
}
上面是移除1、2
foreach (int i in numbers)
{
Console.Write (i.ToSring());
}
输出剩下的数
3、4、5
选B

选b)

b

Remove方法是直接移除list中的这个元素,所以是直接移除1,2这个两个元素,不是index所以选b

做这个题,首先应该明白Remove是移除匹配的值还是移除该索引(Index)位置的值。
===============================
而Remove是移除匹配的项目,即移除匹配的值。
numbers.Add(i);的时候依加入了1、2、3、4、5
numbers.Remove(i);的时候依次移除了匹配的值1、2
所以在numbers中剩下的是3、4、5

希望不是我看错Console.Write (i.ToSring()); 少了个“t”,肯定是运行出错啊
如果不是,那就选 B