我正在做一個小程序,在庫列表中放置貨架。如果之前已輸入貨架數量,則不能再次輸入。但是,它不起作用。檢查一個值是否已經在列表中不起作用
這是我在主類代碼:
Shelf s = new Shelf(1);
Shelf s2 = new Shelf(1);
Library l = new Library();
l.Addshelf(s);
l.Addshelf(s2);
正如你可以看到我在這兩個對象作爲層架號進入1所以下面這段代碼應該再從庫類運行
public void Addshelf(Shelf s)
{
List li = new ArrayList();
if(li.contains(s))
{
System.out.println("already exists");
} else {
li.add(s);
}
}
問題必須出現在上述方法中。我想知道如何檢查該貨架號是否已經存在於列表中,在這種情況下,它應該使用上述語句提示我 - 「已存在。」
您已經採取'列表L =新的ArrayList();'是方法的局部變量'Addshelf(擱板的)'所以每次調用此方法一個新的列表將被創建。它不服務你的目的。你需要根據你的需要讓List成爲一個實例變量或類變量。 – gprathour 2014-12-04 12:02:19
非常感謝我所做的一切,因此我將這個List移出了這個方法。感謝你的幫助 ! – user3679986 2014-12-04 12:16:24