java - 如何将默认值添加到 ArrayList - 解决:索引 0 超出长度 0 的范围
问题描述
说我有这样的事情:
public void handle(ArrayList<Object> tasks) {
ArrayList<Object> results = new ArrayList<Object>();
for (int i = 0; i < tasks.size(); i++) {
results.set(i, tasks.get(i);
}
}
如果我执行上述操作,我会收到错误消息:
索引 0 超出长度 0 的范围
所以我必须做的临时/愚蠢的解决方案是:
for (int i = 0; i < tasks.size(); i++) {
results.add(null);
results.set(i, tasks.get(i);
}
但这太糟糕了,哈哈……我们如何用 Java 做到这一点?
解决方案
for (Object task:tasks) {
if(task==null) {
results.add(task)
}
}
推荐阅读
- roomle - Rails 6 中的 Roomle SDK,使用 webpacker,抛出错误
- css - 如何通过包含字体路径的 source() 在模板中加载 CSS 文件
- javascript - Dynamodb:使用地图索引更新地图数组
- c++ - C++ SFML tile map最后一行错误大小问题
- javascript - 循环LI时Jquery替换
- git - Azure DevOps:如何使用 REST API 存储库在 GIT 存储库中创建文件夹
- python - 如何计算可能包含列表和字符串的变量中的字符
- swift - 有没有办法在不删除视图并重新添加的情况下更新 StackView 中的视图?
- ruby-on-rails - Pundit::AuthorizationNotPerformedError
- spotfire - 如何从存在多个满足条件的整体之间的字符串中提取文本并返回所有值