我希望能幫助我一個學校項目。我正在編寫一個代碼,用戶在櫥櫃中輸入用戶的雜貨。它還指定了它是什麼類型的產品,名稱,它在哪裏被購買,標籤,價格,數量 - 就像一個庫存。我有一個類名Dairy,我可以爲每個需要單獨輸入的輸入創建一個getter。這工作得很好,我設置了它,有一個傳遞參數,當我在InputDairy方法中調用getter時,它工作得很好。只有一個安裝員的多個輸入
但是因爲我問用戶很多關於產品的問題,我不想讓10個getter有一種方法,只有一個,然後傳遞參數?這裏的代碼是非工作的,我嘗試在一個getter中設置所有參數,然後逐個傳遞參數。這不起作用。這是可能的,還是我必須爲每個問題設置一個getter?
public static void InputDairy (Dairy DairyProducts[], Fruit FruitProducts[], Scanner input){ // START OF INPUT DAIRY
System.out.println("Let's put in some DAIRY products");
for (int i = 0; i < DairyProducts.length; i++){
System.out.println("Enter name of DIARY product");
String a = input.next();
DairyProducts[i].setDairyData(a);
System.out.println("Enter Store where you bought DIARY product");
String a = input.next();
DairyProducts[i].setDairyData(b);
System.out.println("Enter how much you paid for DIARY product");
String a = input.next();
DairyProducts[i].setDairyData(c);
System.out.println("Enter when did you buy DIARY product");
String a = input.next();
DairyProducts[i].setDairyData(d);
}
} // END OF INPUT DAIRY enter code here
public class Dairy {
private String D_NameOfDairy;
private String D_NameOfStore;
private int D_PricePaid;
private int D_DayPurchased;
private int D_BestBefore;
private int D_AmountInGrams;
private int D_Pieces;
public Dairy() {
D_NameOfDairy = "Default name of dairy";
D_NameOfStore = "Default name of store for dairy";
D_PricePaid = 0;
D_DayPurchased = 01/01/2000;
D_BestBefore = 10/10/2010;
D_AmountInGrams = 0;
D_Pieces = 0;
}
public void setDairyData (String a, String b, int c, int d){
D_NameOfDairy = a;
D_NameOfStore = b;
D_PricePaid = c;
D_DayPurchased = d;
}
}
如果一個方法需要4個參數,那麼你應該只傳遞這四個參數。 –