我想将项目 i1 和 i2 作为数组存储在用户参数项目中。我想这部分还可以。
class item {
int quty;
String name;
double nc;
public item(String name, int quty, double nc) {
this.quty = quty;
this.name = name;
this.nc = nc;
}
static item i1 = new item("I1", 10, 6.04);
static item i2 = new item("I2", 14, 8.01);
}
class user {
String name;
double nc;
item[] items; // store item objects as value of user
public user(String name, double nc, item[] items) {
this.name = name;
this.nc = nc;
this.items=items;
}
static user u1 = new user("Tenny", 10.18, new item[]{item.i1, item.i2} ); // user stores two items
}
然后我想调用项目的名称。 您可以通过 System.out.println(item.i1.name) 轻松调用项目名称,但我想调用用户 u1 拥有的项目名称。
System.out.println("User has " + Arrays.toString((user.u1.items.name)));
上面没有这样做。如何做到这一点?
最佳答案
您调用的方式不正确,因为 Items 是需要索引的数组类型。
user.u1.items[0].name
您可以使用下面的代码来打印用户所有项目的名称。
for(item i:user.u1.items) {
System.out.println(i.name);
}
关于Java - 将对象数组存储为另一个对象的值并调用该值的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61436611/