我有一个程序会继续列出号码。即1,3,5,3,2,5,7,,8,3,10,14等。我如何编辑这个for loop / if语句来检查每3个数字?这是对的吗?
for(int i = 0; i<theMessage.length;i+3){
if(...)
return ...;
}
答案 0 :(得分:2)
i+3
和i+=3
之间的区别是什么?
第一个说“取i
的价值并添加3
第二个说“取i
的值并向其添加3
,并将结果分配给i
”。
如果您未将结果分配回i
,则i
的值不会更改...并且您使用i
设置一遍又一遍地重复循环为零,
答案 1 :(得分:1)
您需要在每次迭代后更新 i 的值,因此您必须使用i+=3
代替i+3
,因为i+=3
是{i=i+3
的简写1}}
这会迭代你的数字,每三个数字:
for(int i = 0; i<theMessage.length;i+=3){
if(...)
return ...;
}
如果你想从1
开始,你可以从1
而不是零开始你的循环:
for(int i = 1; i<theMessage.length;i+=3){
if(...)
return ...;
}
这会迭代你的数字,每三个数字:
for(int i = 0; i<theMessage.length;i+=3){
if(...)
return ...;
}
修改(回答评论我希望循环检查三个一组中的每个数字):
你可以有这样的if语句:
if(theMessage[i] have condition)
if(i+1<theMessage.length && theMessage[i+1] have condition)
if(i+2<theMessage.length && theMessage[i+2] have condition)
return what you want;