AnyLogic
Развернуть
Размер шрифта

switch

Оператор switch позволяет выбирать, какую из произвольного количества секций кода нужно выполнить, исходя из того, какому значению равно заданное выражение. Синтаксис оператора такой:

switch( <целочисленное выражение> ) {
  case <целочисленная константа 1>:
    <код, будет выполнен в случае 1>
    break;
  case <целочисленная константа 2>:
    <код, который будет выполнен в случае 2>
    break;
  …
  default:
    <код, который будет выполнен, если ни один случай не подошел>
    break;
}

Операторы break в конце каждой секции case говорят Java о том, что выполнение оператора switch закончено. Если вы не добавите break, то Java продолжит выполнение следующего раздела, не обращая внимания на то, что он соответствует другому случаю.

Код, заданный в разделе default, выполняется в том случае, если целочисленное выражение вернуло результат, не равный ни одному из случаев. Этот раздел необязателен.

Целые значения, соответствующие различным случаям case оператора switch, обычно задаются заранее с помощью целочисленных констант. Допустим, вы создаете модель мостового крана, в которой кран является агентом, управляемым набором команд. Реакция крана на получение команд может быть запрограммирована в форме оператора switch:

switch( command ) {
  case MOVE_RIGHT:
    speed = 10;
    break;
  case MOVE_LEFT:
    speed = -10;
    break;
  case STOP:
    speed = 0;
    break;
  case RAISE:
    …
    break;
  case LOWER:
    …
    break;
  default:
    error( "Недопустимая команда: " + command );
}
Как мы можем улучшить эту статью?