如何在此特定集合类型中存储对象?我是否必须创建方法或构造函数?我已经看到了创建数组列表的不同示例,但没有看到这种类型的数组列表。 static
暗示了什么,它仅对班级Inventory
意味着什么?
static List<Inventory> values = new ArrayList<Inventory>();
import java.util.List;
import java.util.ArrayList;
import java.util.Scanner;
public class Inventory {
static List<Inventory> values = new ArrayList<Inventory>();
public static void main(String[] args) {
}
}
答案 0 :(得分:3)
List<Inventory>
表示保留List
个实例的Inventory
。您可以添加元素并稍后迭代到values
。因为它是static
,所以每个类只有一个。最后,因为没有指定的访问修饰符,所以只能访问同一个包中的类(默认情况下是包私有)。在Java 7+中,这个
static List<Inventory> values = new ArrayList<Inventory>();
可以缩短为
static List<Inventory> values = new ArrayList<>();
至于添加方法(和字段),是的,你需要那些做任何真正有用的事情。举个简单的例子,你可能有一个值字段 1 ,并在构造函数中为它赋值。然后你可以填充你的values
并最终迭代 2 它们来显示一些东西
int aValue;
public Inventory(int value) {
this.aValue = value;
}
public static void main(String[] args) {
values.add(new Inventory(1));
values.add(new Inventory(2));
for (Inventory v : values) { // <-- a for-each loop
System.out.println(v.aValue);
}
}
1 因此aValue
。
2 这里我使用了for-each
循环。