c#中的链表数组



我在c#中声明了一个链表数组,现在我想删除索引I中不等于first或last的元素。我该怎么做?

LinkedList<DataTable>[] Arraylinked= new LinkedList<DataTable[1000];                       
Arraylinked[0].AddLast(data table11);                 
Arraylinked[1].AddLast(data table12);
Arraylinked[2].AddLast(data table13);
Arraylinked[3].AddLast(data table14);

现在,我想从我的arraylinkedlist中删除Arraylinked[2]。怎么能做到?

DataTable node = Arraylinked.First;
int index = 0;
while (node != null) {
    DataTable nextNode = node.Next;
    if (index == 2) {
        Arraylinked.Remove(node);
    }
    node = nextNode;
    index++;
}

或者您可以使用相同的代码,但条件不同,在不知道索引的情况下通过其引用删除项。

你不能从数组中"移除"

您可以尝试使用Linq:

按索引进行过滤。
Arraylinked = Arraylinked
    .Where((idx, item) => idx != 2)
    .ToArray();

相关内容

  • 没有找到相关文章

最新更新