turnLeft = (turnLeft == true ? false : true);
It was part of this code:
public void goLeftAndRight()
{
boolean turnLeft = true;
while (true)
{
placeBeeperAndMove();
if (turnLeft)
turnLeft();
else
turnRight();
if (frontIsBlocked()) break;
move();
if (turnLeft)
turnLeft();
else
turnRight();
[B]turnLeft = (turnLeft == true ? false : true);[/B]
}
}
I have no idea how to read the logic of that statement. Is true ? false : true an if, then statement? In which case does it mean:
if (true) {
false
} else {
true
}
Or is it read as:
if (turnLeft == true) {
false
} else {
true
}
In which case isn't it better to write it as: turnLeft = ((turnLeft == true) ? false : true);
Is it basically a toggle? I don't get it.


Sign In
Create Account

Back to top









