在LinkedList末尾插入节点的问题

时间:2019-04-13 19:33:36

标签: c#

所以我在LinkedList中的这个insertLast函数有问题。

public static void insertLast(LinkedList<Person> list, Person data)  
{ 
    LinkedListNode<Person> head= list.First;
    LinkedListNode<Person> rez = new LinkedListNode<Person>(data);

    if(head == null)  
    {  
        head = rez;   
        return;  
    }   
    LinkedListNode<Person> temp = head;    
    while (temp.Next != null)   
    {
        temp = temp.Next;    
    }  
    temp.Next = rez;  
}

我什至不知道该代码是否会在结尾处插入,因为我无法测试它,因为在此代码temp.Next = rez;上我得到了错误:

“无法将属性或索引器'LinkedListNode.Next'分配给它-它是只读的。”

因此,如果我了解correctly.Next是只读的,那么就不能这样使用它。现在有人知道如何解决这个问题吗?

我将非常感谢!

我不能使用AddLast方法,因为必须创建自己的函数。

2 个答案:

答案 0 :(得分:0)

您不能使用AddLast()...但是可以使用AddAfter()吗?

df <- read.table(text = "
Group                X1   X2   X3   X4   X5   X6
Modern_Dog     9.7 21.0 19.4  7.7 32.0 36.5
Golden_Jackal  8.1 16.7 18.3  7.0 30.3 32.9
Chinese_Wolf  13.5 27.3 26.8 10.6 41.9 48.1
Indian_Wolf   11.5 24.3 24.5  9.3 40.0 44.6
Cuon          10.7 23.5 21.4  8.5 28.8 37.6
Dingo          9.6 22.6 21.1  8.3 34.4 43.1 ",
  header = TRUE, stringsAsFactors = FALSE)

答案 1 :(得分:-1)

请仅添加以下两行:

private void btnAddAtTheEnd_Click(object sender, EventArgs e)
    {
        treeView1.Focus();
        treeView1.SelectedNode = treeView1.Nodes[treeView1.Nodes.Count - 1];
    }

我希望它对您有帮助^ _ ^

enter image description here