Exercício - Valores de incremento e decréscimo
As operações básicas finais sobre as quais você aprenderá neste módulo é como incrementar e diminuir valores usando operadores especiais que são combinações de símbolos.
Incremento e decréscimo
Frequentemente, você precisará incrementar e/ou diminuir valores, especialmente quando estiver escrevendo lógica de looping ou código que interage com uma estrutura de dados.
O += operador adiciona e atribui o valor à direita do operador ao valor à esquerda do operador. Portanto, as linhas dois e três no trecho de código a seguir são as mesmas:
int value = 0; // value is now 0.
value = value + 5; // value is now 5.
value += 5; // value is now 10.
O ++ operador incrementa o valor da variável em 1. Portanto, as linhas dois e três no trecho de código a seguir são as mesmas:
int value = 0; // value is now 0.
value = value + 1; // value is now 1.
value++; // value is now 2.
Essas mesmas técnicas podem ser usadas para subtração, multiplicação e muito mais. As etapas do exercício a seguir destacarão algumas.
Observação
Operadores como +=, -=, *=, ++, e -- são conhecidos como operadores de atribuição composta porque eles compõem alguma operação, além de atribuir o resultado à variável. O += operador é especificamente denominado operador de atribuição de adição .
Escrever código para incrementar e diminuir um valor
Selecione todo o código que você escreveu anteriormente no Editor de Códigos C# e pressione Delete ou Backspace para excluí-lo.
Insira o seguinte código no Editor de códigos C#:
int value = 1; value = value + 1; Console.WriteLine("First increment: " + value); value += 1; Console.WriteLine("Second increment: " + value); value++; Console.WriteLine("Third increment: " + value); value = value - 1; Console.WriteLine("First decrement: " + value); value -= 1; Console.WriteLine("Second decrement: " + value); value--; Console.WriteLine("Third decrement: " + value);Execute o código. Deverá ver o seguinte resultado:
First increment: 2 Second increment: 3 Third increment: 4 First decrement: 3 Second decrement: 2 Third decrement: 1
Observação
No "segundo incremento", você usou value += 1;. No entanto, você poderia ter usado qualquer valor literal int (ou uma variável) para incrementar esse valor. O mesmo se aplica ao "segundo decréscimo": value -= 1;.
Posicionar os operadores de incremento e decréscimo
Tanto os operadores de incremento como de decréscimo têm uma qualidade interessante — dependendo da sua posição, realizam a sua operação antes ou depois de recuperarem o seu valor. Em outras palavras, se você usar o operador antes do valor como no ++value, o incremento acontecerá antes que o valor seja recuperado. Da mesma forma, value++ incrementará o valor após o valor ter sido recuperado.
Use o operador de incremento antes e depois do valor
Exclua o código das etapas anteriores e insira o seguinte código no Editor de Códigos C#:
int value = 1; value++; Console.WriteLine("First: " + value); Console.WriteLine($"Second: {value++}"); Console.WriteLine("Third: " + value); Console.WriteLine("Fourth: " + (++value));Execute o código. Deverá ver o seguinte resultado:
First: 2 Second: 2 Third: 3 Fourth: 4
Observe esta linha de código:
Console.WriteLine($"Second: {value++}");
Há duas etapas para esta linha:
- Recupere o valor atual da variável
valuee use-o na operação de interpolação de cadeia de caracteres. - Aumente o valor.
A próxima linha de código confirma que o valor foi, de fato, incrementado.
Console.WriteLine("Third: " + value);
Em contraste, considere a última linha de código:
Console.WriteLine("Fourth: " + (++value));
Aqui, a ordem das operações é comutada porque o ++ operador é colocado antes do operando value.
- Aumente o valor.
- Recupere o novo valor incrementado da variável
valuee use-o na operação de cadeia de caracteres.
Embora não seja estritamente necessário, você adicionou parênteses em torno da expressão (++value) para melhorar a legibilidade. Ver tantos + operadores próximos uns dos outros parece que pode ser mal interpretado por outros desenvolvedores. Decisões estilísticas como esta são subjetivas. No entanto, como você escreverá o código uma vez, mas o lerá muitas vezes, você deve priorizar a legibilidade.
Recapitulação
Aqui está o que você aprendeu até agora sobre operações matemáticas em C#:
- Use operadores de atribuição compostos como
+=,-=,*=,++, e--para executar uma operação matemática como incremento ou decréscimo e, em seguida, atribua o resultado à variável original. - Os operadores de incremento e decréscimo funcionam de maneira diferente, dependendo se o operador está antes ou depois do operando.