和 Javascript 的循环很类似
循环中可以使用循环控制语句 continue/break
但是solidity中循环的次数最好不太多 不然会消耗太多gas;
continue– 跳出本次循环,继续执行接下来的循环break– 跳出循环(或跳出代码块)
源码:
pragma solidity ^0.8.7;
contract ForAndWhileLoops{
function loops() external pure {
for (uint i = 0; i < 10; i++){
//code
if(i==3){
continue;
}
//more code
if (i == 5){
break;
}
}
uint j = 0;
while (j < 10){
j++;
}
}
function sum(uint _n) external pure returns (uint){
uint s;
for (uint i = 1; i <= _n; i++){
s +=i;
}
return s;
}
}