The do statement

The do statement conditionally executes an embedded statement one or more times. do-statement : do embedded-statement while(boolean-expression);
A do statement is executed as follows: Control is transferred to the embedded statement. When and if control reaches the end point of the embedded statement (possibly from execution of a continue statement), the boolean-expression (14.16) is evaluated. If the boolean expression yields true, control is transferred to the beginning of the do statement. Otherwise, control is transferred to the end point of the do statement.
Within the embedded statement of a do statement, a break statement (15.9.1) may be used to transfer control to the end point of the do statement (thus ending iteration of the embedded statement), and a continue statement (15.9.2) may be used to transfer control to the end point of the embedded statement (thus performing another iteration of the do statement).
The embedded statement of a do statement is reachable if the do statement is reachable.
The end point of a do statement is reachable if at least one of the following is true: The do statement contains a reachable break statement that exits the do statement. The end point of the embedded statement is reachable and the boolean expression does not have the constant value true.