我想檢查一個類類型對象的數組是否包含特定的字符串。Java - 檢查類對象數組是否包含某個字符串
這是構造函數我有一個產品對象:
public Product()
{
name = "No name yet";
demandRate = 0;
setupCost = 0;
unitCost = 0;
inventoryCost = 0;
sellingPrice = 0;
}
這是數組的初始化:
Product[] product = new Product[3];
我發現類似的問題在這裏Checking if long is in array這裏Look if an array has an specified object。所以我試過這段代碼:
public boolean isAProduct(String nameOfProduct)
//Returns true if a name has been found otherwise returns false
{
boolean found = false;
int counter = 0;
while (!found && (counter < MAXNUMBEROFPRODUCTS))
{
if (Arrays.asList(product).contains(nameOfProduct))
{
found = true;
}
else
{
counter++;
}
}
return found;
}
但是這不起作用,因爲它允許我爲產品輸入兩次相同的名稱。所以我的問題是,我試圖甚至有可能嗎?如果不是,我怎麼能解決這個問題呢?
任何意見將不勝感激。
這不是它在Java中的工作原理。您需要遍歷每個「Product」對象,並將「nameOfProduct」與「Product」對象的「name」進行比較。 – kosa
@Nambari你能提供一個我會怎樣做的例子嗎? :) –
我知道你在做班級任務,所以我不想爲你做代碼。但是,這裏是骨架,循環產品[],獲取產品,然後將該產品 - >「名稱」與「nameOfProduct」進行比較。 – kosa