对于一个数组,我可以这样迭代:
for(String str:myStringArray){
}
Run Code Online (Sandbox Code Playgroud)
如何同时迭代两个数组?因为我确信这两个的长度是相等的。我想要如下所示:
for(String attr,attrValue:attrs,attrsValue) {
}
Run Code Online (Sandbox Code Playgroud)
但这是错误的。
在这种情况下,也许映射是一个不错的选择,但是 3 个等长数组怎么样?我只是讨厌创建索引“int i”,它按以下格式使用:
for(int i=0;i<length;i++){
}
Run Code Online (Sandbox Code Playgroud)
您无法使用 foreach 语法执行您想要的操作,但可以使用显式索引来实现相同的效果。仅当数组长度相同时才有意义(或者您使用其他规则,例如仅迭代到较短数组的末尾):
这是检查数组长度是否相同的变体:
assert(attrs.length == attrsValue.length);
for (int i=0; i<attrs.length; i++) {
String attr = attrs[i];
String attrValue = attrsValue[i];
...
}
Run Code Online (Sandbox Code Playgroud)