列表:在当前指向的项目之后插入新项目

时间:2012-12-15 03:15:24

标签: c#

我目前正在进行/试验列表。我可以使用函数GetNextTree确定列表中每个项目的位置,例如:FirstNextLast。我有一个来自数组ax的已经列表,但现在我正在尝试实现一个插入按钮,它将取值tree_typetree_heighttree_price,{{1}并创建项目。由于我可以指向列表中的任何位置,因此插入将用于在当前指向的项目之后添加项目。这就是我的问题所在:如何添加当前指向项目的新项tree_instock

after

1 个答案:

答案 0 :(得分:0)

所以我对这里发生的事情感到有些困惑。你正在实现你自己的ArrayList类似的类,它根本不是一个列表...我真的没有看到在C#中做这些事情的意义但是好吧......这是方法;

  fruit_trees[] InsertNode(fruit_trees current, fruit_trees nNode)
  {
       fruit_trees[] temp = new fruit_trees[ax.Length + 1];
       int i = 0;

       while (ax[i] != current)
       {
             temp[i] = ax[i];
             i++;
       }
       temp[i+1] = nNode;
       while (i < ax.Length)
       {
            temp[i+1] = ax[i];
       }

       return temp; 
  }

这样称呼它;

  ax = InsertNode(current, nNode);

我们正在做的是创建一个带有一个额外插槽的新列表,复制每个fruit_tree直到我们点击我们想要插入的节点,然后我们复制新树。之后我们复制旧阵列的其余部分。然后我们返回新数组。