假设我有
ArrayList<Citizen> citizen1 = new ArrayList<Citizen>();
ArrayList<Citizen> citizen2 = new ArrayList<Citizen>();
ArrayList<Citizen> citizen3 = new ArrayList<Citizen>();
是否有可能使所有这些都受到损害的arraylist?
答案 0 :(得分:0)
List<List<Citizen>> mainList= new ArrayList<>();
您可以使用“列表列表”。
还需要考虑以下几点。
在创建列表对象时,建议使用左侧的 "List"
代替 "ArrayList"
。最好绕过 "List"
界面,因为如果以后需要更改为使用Vector之类的东西(例如,现在需要同步列表),则只需用“新”声明。无论您使用哪种列表实现方式,例如 Vector or ArrayList
,您仍然始终只是绕过列表。
在ArrayList构造函数中,可以将列表保留为空,列表将默认为特定大小,然后根据需要动态增长。但是,如果您知道列表的大小,有时可以节省一些性能。例如,如果您知道文件中总是有500行,那么您可以这样做:
答案 1 :(得分:0)
您可以拥有一个市民名单清单,例如:List<List<Citizen>>= new ArrayList<>()
;
您可以使用addAll()
和List
的{{1}}方法将另一个列表的所有元素添加到一个列表中。
如果至少使用Java 8,则可以使用Streams API进行各种操作:Collection
,Stream.of()
,甚至其他。