for-loop to foreach with negative(i--) 语句
for-loop to foreach with negative(i--) statement
如果我有数据列表,我想用循环删除单独的行(不是批量删除)。
这是我的代码
var objecctCount = listItemsDelete.Count;
for (int i = objecctCount; i > 0; i--)
{
listItemsDelete[i].DeleteObject();
spDataContext.ExecuteQuery();
}
其中,
listItemsDelete
是数据列表,
listItemsDelete[i].DeleteObject();
从 listItemsDelete
、 中删除单独的行
spDataContext.ExecuteQuery();
有助于将值更新为 listItemsDelete
我的逻辑运行良好。
我的问题是,是否可以将 for 循环更改为带有负 statement
的 foreach?因为我对 foreach 的了解有助于使用肯定语句 (I++)。
所以你想反转循环?
foreach(var obj in listItemsDelete.Reverse())
{
obj.DeleteObject();
spDataContext.ExecuteQuery();
}
由于您使用的是 .NET 2,因此无法使用 LINQ。继续你的 for 循环,但修复以下错误。
而不是
for (int i = objecctCount; i > 0; i--)
// ...
使用这个:
for (int i = objecctCount - 1; i >= 0; i--)
// ...
如果我有数据列表,我想用循环删除单独的行(不是批量删除)。
这是我的代码
var objecctCount = listItemsDelete.Count;
for (int i = objecctCount; i > 0; i--)
{
listItemsDelete[i].DeleteObject();
spDataContext.ExecuteQuery();
}
其中,
listItemsDelete
是数据列表,listItemsDelete[i].DeleteObject();
从listItemsDelete
、 中删除单独的行
spDataContext.ExecuteQuery();
有助于将值更新为listItemsDelete
我的逻辑运行良好。
我的问题是,是否可以将 for 循环更改为带有负 statement
的 foreach?因为我对 foreach 的了解有助于使用肯定语句 (I++)。
所以你想反转循环?
foreach(var obj in listItemsDelete.Reverse())
{
obj.DeleteObject();
spDataContext.ExecuteQuery();
}
由于您使用的是 .NET 2,因此无法使用 LINQ。继续你的 for 循环,但修复以下错误。
而不是
for (int i = objecctCount; i > 0; i--)
// ...
使用这个:
for (int i = objecctCount - 1; i >= 0; i--)
// ...