Добавление в ArrayList объектов? - PullRequest
0 голосов
/ 15 февраля 2019

Просто для начала это для школы.Не ищу ответа, но я теряюсь, когда добавляю дату и вес в объект, а затем добавляю этот объект в массив.

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

Этот метод - то, что добавляет объект, а затем вarraylist.

Я не уверен, неправильно ли он добавляет объекты в arraylist или когда я пытаюсь напечатать значения и просто вызывает последний введенный и печатает его.Ниже я пытаюсь напечатать значения.

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");

}

1 Ответ

0 голосов
/ 15 февраля 2019

Насколько я понимаю из вашего вопроса, вы повторно используете записи в качестве объекта для добавления объекта в ArrayList.

Вы правильно добавляете объект в ArrayList, там нет ошибок.

В действительности вы не получаете доступ к весу из ArrayList, вы получаете доступ к весу последнего созданного объекта, поэтому вы просто получаете значение последнего объекта.

Iне поймите правильно вашу конечную цель здесь.Но вот что вы должны изменить в функции viewList:

weightLossOrGain -= diet.get(i).getWeight();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...