Я хотел бы знать, как Java обрабатывает несколько идентичных экземпляров одного и того же случая.Я думаю, что концептуально имеет смысл следующее:
switch (someIntegerValue)
{
case 1:
case 2:
DoSomethingForBothCases();
break;
case 3:
DoSomethingUnrelated();
break;
case 1:
DoSomethingForCase1ThatReliesUponExecutionOfTheEarlierFunctionCall();
break;
case 2:
DoSomethingForCase2ThatReliesUponExecutionOfTheEarlierFunctionCall();
break;
}
По сути, я хотел бы, чтобы кусок кода выполнялся для случая 1 или 2 (с использованием сброса), но потом, иметькусок кода выполняется только для случая 2.
Скорее, необходимо ли следующее, вместо этого?
switch (someIntegerValue)
{
case 1:
DoSomethingForBothCases();
DoSomethingForCase1ThatReliesUponExecutionOfTheEarlierFunctionCall();
break;
case 2:
DoSomethingForBothCases();
DoSomethingForCase2ThatReliesUponExecutionOfTheEarlierFunctionCall();
break;
case 3:
DoSomethingUnrelated();
break;
}
Мой реальный код более сложный, но будет использовать тот же принцип (то есть что-то вроде" case 1 : нет; хорошо ... case 2 : yep! Выполнить этот код !; case 3 : nope; case 1 снова?: все еще нет !; снова случай 2? : да! Выполнить этот код; больше никаких дел : все выполнено! ")