java - 添加到对象的 ArrayList 中?

标签 java object arraylist

对于初学者来说,这是针对学校的。不是在寻找答案,但当我将日期和重量添加到对象中,然后将该对象添加到数组列表中时,我迷失了方向。

public void addEntry(String d, int w) {
    Diet dietConstructor = new Diet();
    entries = new Entry(d, w);
    diet.add(entries);
}

此方法将添加到对象,然后添加到数组列表中。

我不确定它是否错误地将对象添加到数组列表中,或者当我尝试打印值时它只是调用最后输入的值并打印它。 下面是我尝试打印值的地方。

public void viewList()
{
    String output = "";

    weightDiff = 0;

    for (int i = 0; i < diet.size(); i++)
    {
        weightLossOrGain = entries.getWeight();

        System.out.print("  " + diet.get(i) + "\t      ");
        System.out.print(diet.get(i) + "\t   ");

        System.out.print(weightDiff + "\n\n");

        weightLossOrGain -= entries.getWeight();
    }

    System.out.println("-------------------------------\n");
    System.out.println("Net Weight Loss/Gain = " + weightLossOrGain + "\n");
    System.out.println("-------------------------------\n\n");

}

最佳答案

据我从您的问题中了解到,您正在重新使用条目作为对象来将该对象添加到 ArrayList 中。

您正确地将对象添加到 ArrayList,没有错误。

您实际上并未访问 ArrayList 中的权重,您正在访问最后一个创建的对象的权重,这就是为什么您只是获取最后一个对象的值。

我在这里没有正确理解您的最终目标。但您应该在 viewList 函数中修改以下内容:

weightLossOrGain -= diet.get(i).getWeight();

关于java - 添加到对象的 ArrayList 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54701250/

相关文章:

javascript - 如何使用变量来选择要搜索的对象的属性?

Java 对象、继承和接口(interface)

java - 合并两个没有重复子类的ArrayList

java - 编辑.java文件并重新编译

java - 如何覆盖 Spring Boot 库属性?

javascript - 查看对象

java - 为什么我们不能将 ArrayList<Integer> 传递给带有 (Integer...) 参数的方法?

java - 使用 ImageButtons 数组判断按下哪个按钮

java - Spring-WS:尝试使用 WebServicesParserFactory 设置 NameSpaceAware 时出现 NullPointerException

java - Apache Tomcat 7 不接受连接