Путем форматирования вашего кода я заметил, что может показаться, что ваш оператор if не выполняется.
Вам нужно иметь { }
s вокруг получающегося кода из оператора if, например:
if(true){
line 1;
line 2;
line 3;
}
else {
line 1;
line 2;
line 3;
}
Единственный раз, когда вы можете пропустить { }
s, это когда у вас есть только ОДИН оператор после if.Однако это всегда плохая идея, это не так много усилий, чтобы просто затратить несколько { }
с, и означает, что такие проблемы никогда не произойдут.
Разъяснение
Код в вашем вопросе запускает if
, и если он совпадает, он запускает СЛЕДУЮЩУЮ ЛИНИЮ.Затем код выполняет ЗАВЕРШЕНИЕ предложения if (из-за пропущенных скобок), поэтому он будет запускать следующие две строки НЕЗАВИСИМО от результата оператора if
.
Затем он встречает else
, который егоне ожидая.Предполагается, что он должен быть либо после { .. }
, либо непосредственно после оператора FIRST после оператора if, поэтому он завершается с ошибкой в else
.