Member 13772903 Ответов: 2

Какой самый простой способ сделать магазин java?



Так... У меня есть проект по магазину, который продает запчасти для ПК.Существуют продукты, периферийные устройства (монитор, мышь и т. д.) и аппаратные средства (Оперативная память, процессор и т. д.).
Что мне нужно, так это создать своего рода меню, в котором пользователю будет предложено выбрать периферийное устройство или аппаратное обеспечение. Затем его просят выбрать тип или периферийное устройство , или аппаратное обеспечение, например монитор, если он выбрал периферийное устройство. Наконец, его просят выбрать один из продуктов того типа, который он выбрал.

Я не хочу связываться с целой кучей "если".
Я думал об использовании arraylists, которые содержат другие arraylists, просто большие в моей иерархии классов, но я не знаю, как добавить целый arraylist в другой (не это элементы, а имя arraylists-и я также хочу иметь возможность ссылаться на его элементы).

У кого-нибудь есть решение?

Что я уже пробовал:

Я попытался создать arraylist с аналогичной структурой, как моя иерархия классов, а затем пройти через него с циклами и ifs, основываясь на том, что выбрал бы пользователь.

2 Ответов

Рейтинг:
2

Richard MacCutchan

Используйте один из встроенных классов коллекций, это значительно облегчит вашу работу. Видеть След: Коллекции (Учебные Пособия Java™ )[^].


Рейтинг:
2

CPallini

Цитата:
Я думал об использовании arraylists, которые содержат другие arraylists, просто большие в моей иерархии классов, но я не знаю, как добавить целый arraylist в другой (не это элементы, а имя arraylists-и я также хочу иметь возможность ссылаться на его элементы).
Хранение ссылки на объект ArrayList в другую ArrayList это не сложно, попробуйте, например
import java.util.ArrayList;
class Foo
{

  public static void main( String arg[])
  {
    ArrayList < Product > ap = new ArrayList <Product>();
    ap.add( new Product("monitor", 200.0));
    ap.add( new Product("mouse", 4.99));

    ArrayList < ArrayList < Product> > aap = new ArrayList < ArrayList< Product > >();

    aap.add(ap);

    Product p = aap.get(0).get(1);
    System.out.printf("%s %g\n", p.getName(), p.getPrice());
  }
}


class Product
{
public Product(String name, double price){ this.name = name; this.price = price; }

  public String getName(){return name;}
  public double getPrice(){return price;}

  String name;
  double price;
}