do
Statementdo
statement executes a Statement and an Expression repeatedly until the
value of the Expression is false
.
DoStatement:The Expression must have type
do
Statementwhile (
Expression) ;
boolean
, or a compile-time error occurs.
A do
statement is executed by first executing the Statement. Then there is a choice:
do
statement completes abruptly for the same reason. Otherwise, there is a choice based on the resulting value:
do
statement always executes the contained Statement at least once.
break
with no label, then no further action is taken and the do
statement completes normally.
continue
with no label, then the Expression is evaluated. Then there is a choice based on the resulting value:
true
, then the entire do
statement is executed again.
false
, no further action is taken and the do
statement completes normally.
continue
with label L, then there is a choice:
do
statement has label L, then the Expression is evaluated. Then there is a choice:
true
, then the entire do
statement is executed again.
false
, no further action is taken and the do
statement completes normally.
do
statement does not have label L, the do
statement completes abruptly because of a continue
with label L.
do
statement completes abruptly for the same reason. The case of abrupt completion because of a break
with a label is handled by the general rule.
do
statementtoHexString
method
of class Integer
:
public static String toHexString(int i) { StringBuffer buf = new StringBuffer(8); do { buf.append(Character.forDigit(i & 0xF, 16)); i >>>= 4; } while (i != 0); return buf.reverse().toString(); }Because at least one digit must be generated, the
do
statement is an appropriate
control structure.