Java – can you use throw instead of break in a switch statement?
•
Java
Can I throw or exit a switch statement without using the break keyword? Why use throwing instead of rest?
switch(number)
{
case 1:
throw new RuntimeException("Exception number 1");
case 2:
throw new RuntimeException("Exception number 2");
}
Solution
There are two situations in which throw can be used to interrupt the traffic of the switch:
>Flow control; In general, this is a bad practice – you don't want special behavior to determine where your plan will go next. > Unlikely but plausible default; If you reach a condition that cannot reach the default value, it will happen anyway Somehow Incredible Or, if you have strict coding standards, you require switch statements to have defaults
Example:
public class Test {
public static enum Example {
FIRST_CASE,SECOND_CASE;
}
public void printSwitch(Example theExampleCase) {
switch(theExampleCase) {
case FIRST_CASE:
System.out.println("First");
break;
case SECOND_CASE:
System.out.println("Second");
break;
default: // should be unreachable!
throw new IllegalStateException(
"Server responded with 724 - This line should be unreachable");
}
}
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码
