我目前正在进行/试验列表。我可以使用函数GetNextTree
确定列表中每个项目的位置,例如:First
,Next
和Last
。我有一个来自数组ax
的已经列表,但现在我正在尝试实现一个插入按钮,它将取值tree_type
,tree_height
,tree_price
,{{1}并创建项目。由于我可以指向列表中的任何位置,因此插入将用于在当前指向的项目之后添加项目。这就是我的问题所在:如何添加当前指向项目的新项tree_instock
?
after
答案 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
直到我们点击我们想要插入的节点,然后我们复制新树。之后我们复制旧阵列的其余部分。然后我们返回新数组。