[Chapter 9] 9.2 The next Statement
Author: Randal L. Schwartz, Erik Olson & Tom Christiansen
Date: 1999-07-02T01:34:10Z

#

| Chapter 9 Miscellaneous Control Structures |

## 9.2 The next Statement

Like `last`, `next` alters the ordinary sequential flow of execution. However, `next` causes execution to skip past the rest of the innermost enclosing looping block without terminating the block.[2] `next` is used like this:

> [2] If a `continue` block exists for the loop, which we haven't yet discussed, `next` goes to the beginning of the `continue` block rather than to the end of the block. Pretty close.

    while (something) {
            firstpart;
            firstpart;
            firstpart;
            if (somecondition) {
                somepart;
                somepart;
                next;
            }
            otherpart;
            otherpart;
            # next comes here
    }

If `somecondition` is true, then `somepart` is executed, and `otherpart` is skipped around.

Once again, the block of an `if` statement doesn't count as a looping block.

9.1 The last Statement |  | 9.3 The redo Statement