В приведенном ниже коде я пытаюсь захватить имя, стоимость и приоритет в объекте. Я использую цикл for для создания 7 объектов и добавляю каждый объект в ArrayList, называемый itemData.Использование Loop для генерации ArrayList
Я не думаю, что мой код сохраняет имя, стоимость и приоритет в элементе каждый раз при запуске цикла. Любые предложения приветствуются.
import java.util.*;
public class Main {
public static List<ItemData> itemData = new ArrayList<ItemData>();
public static void main(String[] args) {
int i=0;
//String name1;
//int priority1;
//double cost1;
String[] item = new String[7];
for (i=0; i<item.length; i++) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter item name " + i);
String name = keyboard.next();
Scanner keyboard2 = new Scanner(System.in);
System.out.println("Enter the price of item " + i);
double cost = keyboard2.nextDouble();
Scanner keyboard3 = new Scanner(System.in);
System.out.println("Enter Priority Number " + i);
int priority = keyboard3.nextInt();
ItemData grocItem = new ItemData(name, cost, priority);
itemData.add(grocItem); // add grocery items to itemData ArrayList
};
System.out.println(item.name)
// System.out.println(+ grocItem);
}
//How do I add grocItem to an Array list of other grocItems (6 grocItems from user input array item)
//Main.itemData.add(groclist);
}
Itemdata class:
public class ItemData{
public ItemData(String name, double cost, int priority){
// Main.groclist.add (grocItem);
Вставить код ItemData. – Lokesh
и зачем вам это нужно? String [] item = new String [7]; " – Lokesh
Откуда вы знаете, что их не удерживают? Код, который вы опубликовали, не компилируется, я предполагаю, что ItemData определен где-то и сохраняет имя, стоимость, приоритет в обычных переменных экземпляра? Вы также можете избавиться от массива 'item', вам нужно переместить определение grocItem на свое место, чтобы строка System.out.println была скомпилирована (массив не имеет имени'). – MilesHampson