java - 用一个循环 foreach 两个不同的对象
问题描述
我有两个不同的对象,但是当我执行一个 for 循环时,它们都有共同的对象。因为我想做唯一的foreach。为什么你在 foreach 的语法中给我错误?
ListResponse rp = sctService.search(usercode, dateFrom, dateTo, amountFrom, amountTo, debit);
CancellableSearchResponse ca = sctService.searchCancellable(usercode, amountFrom, amountTo);
for (Bonifico b : rp.getBonifici();ca.getBonifici()) {
}
解决方案
您不能在 java 中用一个 foreach 循环两个列表。如果您想将它们循环在一起,您可以执行以下操作:
int i = 0;
List<Bonifico> rpBonifici = rp.getBonifici();
List<Bonifico> caBonifici = ca.getBonifici();
while (i < rpBonifici.size() || i < caBonifici.size() {
if (i < rpBonifici.size()) {
rpBonifici.get(i);// do something with it
}
if (i < caBonifici.size()) {
caBonifici.get(i);// do something with it
}
i++;
}
如果您 100% 确定列表具有相同的大小,则可以在访问列表元素之前取消检查:
int i = 0;
List<Bonifico> rpBonifici = rp.getBonifici();
List<Bonifico> caBonifici = ca.getBonifici();
while (i < rpBonifici.size() || i < caBonifici.size() {
rpBonifici.get(i);// do something with it
caBonifici.get(i);// do something with it
i++;
}
推荐阅读
- google-cloud-platform - 没有找到任何解决“配额‘CPUS’超出。限制:0.0 in region asia-south1”
- vue.js - nuxtjs 默认阻止加载 youtube 视频还是浏览器?
- flutter - Flutter:何时使用`print`和`debugPrint`?
- dart - 无法访问 Dart 库中的私有方法
- c# - 我收到 AuthorizationsDenied 错误
- eclipse - 自定义继承 Xtext 的范围
- iis - 电子自动更新
- android - android studio 上的颜色与物理设备上的颜色不同
- google-apps-script - CSV 处理并上传到 Google Analytics
- python - 想用脚本python从json文件中删除方括号