gpt4 book ai didi

Java:项目链表问题

转载 作者:行者123 更新时间:2023-12-02 00:47:33 25 4
gpt4 key购买 nike

我之前曾使用过链表和字符串、 double 等,它们总是按预期工作。但现在我正在形成一个项目的链接列表,每当我向列表中添加新元素时,列表中的所有对象显然都等于最后一个对象。

主要代码如下:

import java.util.*;

public class Global
{

static public LinkedList<StockInfo> DiaryStocks = new LinkedList<StockInfo>();

static public class StockInfo //info related to each stock in diary
{
String recordDate;
String ticker;
int status;
String buyDate;
String sellDate;
double buyPrice;
double sellPrice;
double nmbrShares;
}//StockInfo

//The following function places the Diary data for a stock in the arraylist

static public void AddDiaryData(StockInfo thisdata)
{
String tckr;
int i;

DiaryStocks.add(thisdata);

for (i = 0; i < DiaryStocks.size(); i++) //this is debug code
{
tckr = DiaryStocks.get(i).ticker;
}
}
}

正如我所说,当单步执行靠近底部的调试代码时,每次我向列表中添加一个新项目时,列表大小都会按预期增长,但 tckr 项目仅对应于最后添加的项目。

任何对此难题的见解将不胜感激。

约翰·多纳

最佳答案

问题超出了您提供的代码范围。您很可能添加相同的 StockInfo 实例。也许你有这样的想法:

StockInfo info = new StockInfo();
for (...) {
info.setFoo(..);
info.setBar(..);
AddDiaryData(info);
}

您不应该重复使用这样的实例。您应该每次创建一个新实例。

作为旁注 - Java 中的方法名称应以小写字母开头。

关于Java:项目链表问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4527241/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com