如何向另一个ArrayList中添加包含数组的ArrayList新对象?
解决嵌套ArrayList的添加问题
嘿,这事儿其实超简单!你已经把外层的menues定义成了ArrayList<List<String[]>>类型,那直接用add()方法把内层的items对象传进去就行啦。我帮你把代码补全并解释明白:
首先先完成内层items的创建和数据填充,然后把整个items对象添加到menues里就搞定了。完整代码示例如下:
import java.util.ArrayList; import java.util.List; public class HelloWorld { public static void main(String[] args) { // 外层ArrayList:用来存储多个菜单列表 ArrayList<List<String[]>> menues = new ArrayList<>(); // 内层ArrayList:存储单组菜品的String数组 ArrayList<String[]> items = new ArrayList<>(); // 往items里添加具体的菜品数组示例 items.add(new String[]{"香辣汉堡", "25元"}); items.add(new String[]{"冰爽可乐", "9元"}); items.add(new String[]{"薯条套餐", "18元"}); // 核心操作:把整个items菜单列表添加到menues中 menues.add(items); // 可选:验证一下嵌套存储的结果 for (List<String[]> menu : menues) { System.out.println("=== 菜单列表 ==="); for (String[] item : menu) { System.out.println("菜品:" + item[0] + ",价格:" + item[1]); } } } }
关键细节说明:
- 你的
menues泛型是List<String[]>,而ArrayList本身就是List接口的实现类,所以items作为ArrayList<String[]>对象,完全符合menues的元素类型要求,直接调用menues.add(items)就能完成嵌套添加。 - 如果之后需要添加更多独立的菜单列表,只需要再新建一个
ArrayList<String[]>对象,填充数据后重复调用menues.add(新列表对象)就可以了。
内容的提问来源于stack exchange,提问作者phapha pha
相关产品推荐
相关产品推荐

