Не знаете, как сформулировать этот вопрос. У меня есть фиктивный код для упражнений bootcamp/training. У меня есть список хеш-карт, которые я хочу установить в этом цикле, когда он проходит через ингредиенты. Код работает без ошибок, однако все ингредиенты в списке хеш-карт всегда устанавливаются на последний. Кажется, что каждый из них написан поверх предыдущего. Вот мой код:Логический список ошибок HashMap?
List<Map<String,String>> returner= new ArrayList<Map<String,String>>();
Map<String,String> resultant = new HashMap<String,String>();
for (Ingredient current : webIngredients) {//loop through each ingredient in list of ingredients
resultant.put("Ingredient", current.getIngredientName());
resultant.put("Quantity", current.getQuantity());
resultant.put("Unit", current.getMeasureType());
recipe.getFields().add(resultant);//using a recipe. Not used in test
returner.add(resultant);//add first hashmap to the list
}//end for: loop through records (file lines)
Поэтому в основном я хочу прочитать в ингредиентах от объекта ингредиента, который имеет три свойства, ingredientname, количество и единицы (измерения). Так что, если я дам ему салат, 2, ломтик и помидор, 1, кусочек, то я должен получить список с картами. Ингредиент: салат Количество: 2 Единица: срез, ингредиент: томатный объем: 1 единица: срез
Я переместил объявление карты внутри цикла for, и проблема все еще сохраняется. Что еще может быть причиной этого? –
Моя ошибка: вы правы, проблема была в ошибке памяти на сервере веб-логики. Я также развертывал веб-сервис. Извините и спасибо, что нашли время, чтобы попытаться помочь мне. Я думаю, я заслужил -2s ... –