Giving multiple conditions in for loop in Java [closed]
I was searching for "How to give multiple conditions in a for loop?" But there are no direct answers given.
After some research I found the correct way. Conditions should not be comma(,) or semicolon(;) separated. We can use the && operator to join both the conditions together.
for( initialization ; condition1 && condition2 ; increment)
Example:
for(int j= 0; j < 6 && j < ((int)abc[j] & 0xff) ; j++ )
{
//
}
Hope this helps the new Java developers.
You can also use "or" operator,
for( int i = 0 ; i < 100 || someOtherCondition() ; i++ ) {
...
}
A basic for statement includes
- 0..n initialization statements (
ForInit
) - 0..1 expression statements that evaluate to
boolean
orBoolean
(ForStatement
) and - 0..n update statements (
ForUpdate
)
If you need multiple conditions to build your ForStatement, then use the standard logic operators (&&
, ||
, |
, ...) but - I suggest to use a private method if it gets to complicated:
for (int i = 0, j = 0; isMatrixElement(i,j,myArray); i++, j++) {
// ...
}
and
private boolean isMatrixElement(i,j,myArray) {
return (i < myArray.length) && (j < myArray[i].length); // stupid dummy code!
}
It is possible to use multiple variables and conditions in a for loop like in the example given below.
for (int i = 1, j = 100; i <= 100 && j > 0; i = i - 1 , j = j-1) {
System.out.println("Inside For Loop");
}