我已经有一段时间了,因为我已经完成了强烈的bash脚本,我忘记了在for循环中执行多个条件的语法.
在C中,我会这样做:
for(var i=0,j=0; i<arrayOne.length && j<arrayTwo.length; i++,j++){
// Do stuff
}
Run Code Online (Sandbox Code Playgroud)
我已经谷歌搜索了一段时间,只发现涉及嵌套for循环的语法,而不是一个for循环的多个条件.
听起来你在谈论循环算法.
for ((i = j = 0; i < ${#arrayOne[@]} && j < ${#arrayTwo[@]}; i++, j++)); do
# Do stuff
done
Run Code Online (Sandbox Code Playgroud)
假设i和j未设置或为零的大致相当于:
while ((i++ < ${#arrayOne[@]} && j++ < ${#arrayTwo[@]})); do ...
Run Code Online (Sandbox Code Playgroud)
只要你不关心循环后i/ 的值,便可稍微移动一下j.