0

我正在使用链接列表。该列表包含基于文本框中插入的值(大小、高度、库存、价格)的项目。. 通过按钮单击 Add 函数从 texboxes 获取值并附加项目,但每次我将项目添加到列表而不是放置在列表末尾时,它总是放在第一位。我不确定为什么会出现这种行为。如何修改以便它可以始终将项目附加到列表的末尾?(我在名为 results 的第五个多行文本框上显示我的测试结果)。

代码

 public void Add()
    {
        textBoxResults.Clear();

        int stock = Convert.ToInt32(Stock.Text);
        string type = Type.Text;
        double price = Convert.ToDouble(Price.Text);
        int height = Convert.ToInt32(Height.Text);

        Tree = new FruitTrees();
        Tree.Stock = stock;
        Tree.Type = type;
        Tree.Price = price;
        Tree.Height = height;
        Total += Tree.Price * Tree.Stock;
        Trees.AddLast(Tree);


    }
4

2 回答 2

2

这是学校项目吗?只是想知道你为什么不使用System.Collections.Generic.LinkedList<T>.

LinkedList<FruitTrees> trees = new LinkedList<FruitTrees>();

它带有自己的AddLast方法,可以完全满足您的要求。

另外,我认为您的班级名称不应该是复数(FruitTree vs FruitTrees)。

于 2012-12-11T05:52:32.863 回答
2

您可以实现自己的 AddLast,如下所示:

FruitTrees item = Trees.Retrieve(0); 
while (item.Next != null)
{
  item = item.Next;
}
item.Next = NewItem
于 2012-12-11T05:56:24.693 回答