java-使用值初始化的多维ArrayList
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java-使用值初始化的多维ArrayList,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1640字,纯文字阅读大概需要3分钟。
内容图文
![java-使用值初始化的多维ArrayList](/upload/InfoBanner/zyjiaocheng/663/f37a20bdd3334468a866584ee5954b54.jpg)
我是编码新手.我的老师最近介绍了数组和数组列表.我有一个这样的多维数组:
private String[][] pods = {{"pod1", ""}, {"pod2", ""}, {"pod3", ""}, {"pod4", ""}};
我想将其切换到arraylist,因为我需要在其中编辑信息.
我如何使用多维ArrayList来做到这一点?我想用以上信息初始化它.
我已经试过了:
private ArrayList<ArrayList<String>> pods = new ArrayList();
每当我将内容放在括号之间时,都会收到无效的运算符错误.
顺便说一句,以防万一有人想知道-这不是课堂作业.这是我自己尝试的事情.
谢谢.
解决方法:
首先,您的方法是正确的.
您可以为二维数组使用ArrayLists的ArrayList.
然而…
您正在将列表初始化为原始类型.从Java 7开始,您只需将您的分配更改为菱形即可进行推断:
List<List<String>> pods = new ArrayList<>();
在早期版本中:
List<List<String>> pods = new ArrayList<List<String>>();
您还需要填充列表.
为此,您需要进行一些迭代.
这是一个完整的Java 7示例(建议使用List作为“接口代码”).
String[][] info = {{"pod1", ""}, {"pod2", ""}, {"pod3", ""}, {"pod4", ""}};
List<List<String>> pods = new ArrayList<>();
for (String[] level1: info) {
List<String> list = Arrays.asList(level1);
// use this instead if you intend to modify the inner lists
// List<String> list = new ArrayList<>(Arrays.asList(level1));
pods.add(list);
}
System.out.println(pods);
输出量
[[pod1, ], [pod2, ], [pod3, ], [pod4, ]]
现在,一些Java 8 mojo:
String[][] info = {{"pod1", ""}, {"pod2", ""}, {"pod3", ""}, {"pod4", ""}};
List<List<String>> pods =
Arrays.stream(info)
.map((a) -> Arrays.asList(a))
// use this instead if you intend to modify the inner lists
// .map((a) -> Arrays.stream(a).collect(Collectors.toList()))
.collect(Collectors.toList());
System.out.println(pods);
(相同)输出
[[pod1, ], [pod2, ], [pod3, ], [pod4, ]]
内容总结
以上是互联网集市为您收集整理的java-使用值初始化的多维ArrayList全部内容,希望文章能够帮你解决java-使用值初始化的多维ArrayList所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。