我想使用我輸入的數據檢查列表中的重復 ID,然后增加列表中的 qty 變量。如果是新數據,它會添加一個新列表。這是我的代碼public void addBarang(Barang barang){ int id_barang = barang.getId(); if(this.list.isEmpty()) { list.add(barang); } else { for(int i=0;i<list.size();i++) { if(list.get(i).getId() != id_barang) { list.add(barang); System.out.println("Added"); break; } if(list.get(i).getId() == id_barang) { int new_qty = list.get(i).getQty()+barang.getQty(); list.get(i).setQty(new_qty); } } }}即使我輸入新數據,它總是會增加舊數據的數量,并且不會添加新數據(基本上總是以“else”部分結束)。輸入數據的代碼Gudang gudang1 = new Gudang(1,1);System.out.println("ID: ");int id = input.nextInt();System.out.println("Jumlah: ");int qty = input.nextInt();System.out.println("Nama: ");String name = input.next();Barang barang = new Barang(id,name,qty);gudang1.addBarang(barang);類別項目public class Barang {public static int id;private String name;private int qty;public Barang(int id, String name, int qty) { this.id = id; this.name = name; this.qty = qty;}public Barang(){};public int getId() { return id;}public String getName() { return name;}public int getQty() { return qty;}public void setId(int id) { this.id = id;}public void setName(String name) { this.name = name;}public void setQty(int qty) { this.qty = qty;}@Overridepublic String toString() { return "Barang{" + "id=" + id + ", name=" + name + ", qty=" + qty + '}';}
添加回答
舉報
0/150
提交
取消