Как рассчитать сумму цен в корзине JList? - PullRequest
1 голос
/ 08 апреля 2020

Я создавал эту программу инвентаризации, которая получает идентификатор продукта, имя, цену товара и запасы из текстового файла. Он импортирует его в мой список товаров (JList), затем, когда я нажимаю кнопку «добавить в корзину», он перемещает выбранный товар в корзину (что является еще одним JList).

Мой главный вопрос: как я могу рассчитать сумму всех цен в корзине? Как связать цены товаров с указанной c ценой? Предполагая, что для отображения общей цены, я использую JLabel.

Вот несколько картинок и код:

Моя программа инвентаризации

Это код для кнопки перемещения на данный момент:

public void actionPerformed(ActionEvent e) {
    if (e.getSource() == movebutton) {
    model2.addElement(list.getSelectedValue());

    }

Этот код отображает изображения, название товара, цену и запас товара:

public void valueChanged(ListSelectionEvent e) {
    try {
        String gadgets = (String) c1.getSelectedItem();  //when the combobox is selected
        switch (gadgets) {
            case "Consoles":  //selects first product category
                image.setIcon(graphicsconsole[list.getSelectedIndex()]);  //sets the image

                File file = new File("stock\\consoles\\consoles.txt"); //reads the txt file 
                int ctr = 0;
                try {
                    Scanner s1 = new Scanner(new File(String.valueOf(file)));
                    while (s1.hasNextLine()) {
                        ctr = ctr + 1;
                        s1.next();
                        s1.next();
                        s1.next();
                        s1.nextLine();
                    }
                    String[] ID = new String[ctr];
                    String[] PRICE = new String[ctr];
                    String[] STOCK = new String[ctr];
                    String[] NAME = new String[ctr];

                    Scanner s2 = new Scanner(new File(String.valueOf(file)));  //creates strings
                    for (int i = 0; i < ctr; i = i + 1) {
                        ID[i] = s2.next();
                        PRICE[i] = s2.next();
                        STOCK[i] = s2.next();
                        NAME[i] = s2.nextLine();

                iteminfo.setText(NAME[list.getSelectedIndex()]);  //shows the item name
                itemdescription.setText(" P " + PRICE[list.getSelectedIndex()]);  //shows the price
                itemstock.setText(" Stock: "+ STOCK[list.getSelectedIndex()]); //shows the stock
                    }
                } catch (Exception a) {
                    a.printStackTrace();
                }break;

Нужно ли иметь пустой массив и добавить туда значения? Как мне также удалить значения, когда их нет в корзине? Извините, если мой пост / вопрос звучит запутанно, я надеюсь, что это понятно.

...