gpt4 book ai didi

java - 只需一个 Setter 即可实现多个输入

转载 作者:行者123 更新时间:2023-12-01 20:54:47 25 4
gpt4 key购买 nike

我希望你能帮助我完成一个学校项目。我正在编写一个代码,用户可以在其中输入用户在橱柜中拥有的杂货。它还指定了产品的类型、名称、购买商店、标签、价格、数量——就像库存一样。我有一个类名称 Dairy,我可以为我需要的每个输入分别创建一个 getter。这工作得很好,我设置了它,有一个传递参数,当我在 InputDairy 方法中调用 getter 时,它工作得很好。

但是由于我向用户询问了很多关于产品的问题,我不想有 10 个 getter,有没有一种方法可以只拥有一个,然后传递参数?下面的代码是无效的,我尝试在一个 getter 中设置所有参数,然后一一传递参数。但这是行不通的。这是可能的还是我必须为我提出的每个问题设置一个 setter/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;

}

}

最佳答案

首先从用户那里获取所有答案,然后将它们在一行中传递给您的 setter 函数。

public static void InputDairy (Dairy DairyProducts[], Fruit FruitProducts[], Scanner input){ 

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();

System.out.println("Enter Store where you bought DIARY product");
String b = input.next();

System.out.println("Enter how much you paid for DIARY product");
String c = input.next();

System.out.println("Enter when did you buy DIARY product");
String d= input.next();

DairyProducts[i].setDairyData(a,b,c,d);
}

}

关于java - 只需一个 Setter 即可实现多个输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42521926/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com