Если значения options.test
либо 1 или 2 на протяжении выполнения программы, то вы можете просто сделать:
options.test = 3-options.test;
Если эта переменная может быть установлена на другие значения, то лучший способ справиться с это, как правило, с:
switch (options.test)
{
case 1: options.test = 2; break;
case 2: options.test = 1; break;
case ...: options.test = ...; break;
case ...: options.test = ...; break;
case ...: options.test = ...; break;
default: options.test = ...; break;
}
Если значения от 0 до N (с относительно небольшим N), то вы можете также рассмотреть вопрос о хэширования.
Например, вместо:
switch (options.test)
{
case 0: options.test = 4; break;
case 1: options.test = 2; break;
case 2: options.test = 1; break;
case 3: options.test = 3; break;
case 4: options.test = 5; break;
case 5: options.test = 0; break;
}
Вы можете сделать:
static int hash[] = {4,2,1,3,5,0};
options.test = hash[options.test];
Вы используете оператор компаньона '==' внутри скобок. Я предполагаю, что вы хотите присвоить '='? –
Упс, отредактирован. Благодарю. – user9993
Если у вас есть только 2 состояния, вы можете использовать int как bool вместо этого и просто использовать «значение» и «значение». Другим решением будет оператор switch. –