Select
Line 34: | Line 34: | ||
Select statements may be nested. | Select statements may be nested. | ||
− | |||
− | |||
=== Example === | === Example === |
Revision as of 11:41, 8 November 2011
Contents |
Select...Case...Default
Description
Conditionally run statements.
Select <expression> Case <expression> statement1 ... [Case <expression> statement2 ...] [Default statementN ...] EndSelect
Parameters
Switch <expression>
Any vaid expression to used and compared with the Case <expressions>
Case <expression>
If the expression matches the Switch <expression> the following statements up to the next Case or EndSelect statement are executed. If more than one of the Case statements are true, only the first one is executed.
Note - If a Case is lacking a Break then the code will fall through into the next case and execute that and fall through again if theres no break.
Remarks
Select statements may be nested.
Example
Heres an example with all breaks in proper place (Break statement is needed to tell the code to stop or else it wil fall through into the next case that may be what you want though)
$var = 1 Select $var Case 1 Case 2 println("Value is 1 or 2") break Case 3 println("Value is 3") break Case "test" println("Value is \"test\"") break Default println("No preceding case was true!") EndSelect
In the above example: if $var is 1 it will go into Case 1 then fall through into case 2 run the code and break if $var is 2 it will go into Case 2 run the code and break if $var is 3 it will go into Case 3 run the code and break if $var is "test" it will go into Case "test" run the code and break if $var does not match any case at all the code inside Default will be run
This means you can in theory place loads of empty Case statements that you want to all fall through.