我有两个类,一个叫做Modifiers,另一个叫做Options。修饰符具有id,名称和与之关联的一组选项。虽然选项(或每个选项)都有名称和价格。每个选项仅与一个修改器相关联。写这些课程以考虑他们的关系的最佳方式是什么。在我的应用程序中,用户必须输入修改器的名称,然后他们必须输入每个选项的名称和价格。每个修饰符可以根据需要包含多个选项。以下是类以及我现在如何使用它们:用户必须输入修饰符的名称,然后他们必须输入每个选项的名称和价格。每个修饰符可以根据需要包含多个选项。这是课程以及我现在如何使用它们:
public class Modifier {
int id;
String name;
Options [] options;
public Modifier() {
}
public Modifier(String name, Options[] options) {
this.name = name;
this.options = options;
}
public Modifier(int id, String name, Options[] options) {
this.id = id;
this.name = name;
this.options = options;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Options[] getOptions() {
return options;
}
public void setOptions(Options[] options) {
this.options = options;
}
}
我目前将选项组添加为数组。这是选项类。
public class Options {
int id;
String name;
public Options() {
}
public Options(String name, long price) {
this.name = name;
this.price = price;
}
public Options(int id, String name, long price) {
this.id = id;
this.name = name;
this.price = price;
}
long price;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public long getPrice() {
return price;
}
public void setPrice(long price) {
this.price = price;
}
}
And in my main:
Options sausage = new Options("sausage",23);
Options olives = new Options("olives", 24);
Options bacon = new Options("bacon", 25);
Options [] toppings = {sausage, olives, bacon};
Modifier pizza_toppings = new Modifier(1, "Pizza toppings",toppings);
我打算使用SQLIte DB,所以我需要找到一种有效的方法。
答案 0 :(得分:0)
你可以在Options类中添加一个保存修饰符id的字段,然后使用sqlite创建两个表,一个用于修饰符,一个用于选项,当你从中检索数据时,使用外键来构建对象。你的班级现在看起来很好,你可以只在选项表中保存修饰符ids,反之亦然:
修饰符表[modifierId,name] - 选项表[optionId,name,modifierId]