我创建了一个链表和一些节点,我想链接这些节点,不断收到此错误消息。” 属性或索引器 System.Collections.Generic.LinkedListNode.Next 不能分配给它是只读的。 ” var link = new LinkedList<int>(); var node1 = new LinkedListNode<int>(1); var node2 = new LinkedListNode<int>(2); var node3 = new LinkedListNode<int>(3); link.AddFirst(node1); link.AddFirst(node2); link.AddFirst(node3); node1.Next = node2; ---> .next is read only node2.Next = node3; ---> .next is read only 最佳答案 您正在尝试将项目添加到其他项目,但您应该将它们添加到 LinkedList 本身,您已经在这样做:link.AddFirst(node1);link.AddFirst(node2);link.AddFirst(node3);你想改变他们的顺序吗?看起来这只能在添加它们时完成,基于 the methods available on LinkedList<T> 。所以你会想做这样的事情:link.AddFirst(node1);link.AddAfter(node1, node2);link.AddAfter(node2, node3);或者,在您的情况下,只需颠倒对 .AddFirst() 的调用顺序即可产生相同的结果:link.AddFirst(node3);link.AddFirst(node2);link.AddFirst(node1);这会将 node3 添加到列表的开头,然后将 node2 添加到列表的开头(将 node3 推送到第二个元素),然后将 node1 添加到列表的开头(将 node3 推送到第三个元素,将 node2 推送到第二个元素)元素)。关于c# 如何链接 2 个 LinkedListNode?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17496864/
10-11 08:58