Trabalho com tipos de dados numéricos
Sugestão
Consulte a guia Texto e imagens para obter mais detalhes!
Cada valor em C# tem um tipo de dado. Para números, C# fornece vários tipos dependendo se precisa de números inteiros, decimais ou uma gama mais ampla de valores. Escolher o tipo certo ajuda-o a escrever cálculos precisos.
Tipos numéricos comuns
| Nome do tipo | Palavra-chave C# | Descrição | Example |
|---|---|---|---|
| Número inteiro | int |
Números inteiros (positivos ou negativos) |
42, -7, 1000 |
| Decimal | decimal |
Números decimais precisos, ótimos para dinheiro |
19.99m, 3.14m |
| Double | double |
Números decimais maiores, comuns para cálculos |
3.14, 2.71828 |
Observação
Quando se escreve um literal decimal, o C# assume, por defeito, que é um double. Para criar um decimal literal, adicione a letra m no final: 19.99m.
Declaração de variáveis numéricas
Tal como aprendeste antes, declaras uma variável especificando o seu tipo:
int score = 95;
decimal price = 19.99m;
double average = 87.5;
C# é fortemente tipado
Ao contrário de algumas outras linguagens, C# é uma linguagem fortemente tipada. Isto significa que, uma vez declarada uma variável como um certo tipo, ela só pode manter esse tipo de valor:
int count = 10;
count = "ten"; // ERROR! Can't assign a string to an int
Isto pode parecer rigoroso, mas ajuda a detetar erros cedo e torna o seu código mais previsível.
Porque é que o tipo é importante
O tipo de dados afeta a forma como C# realiza os cálculos:
int a = 7;
int b = 2;
Console.WriteLine(a / b); // Output: 3 (integer division truncates)
decimal c = 7m;
decimal d = 2m;
Console.WriteLine(c / d); // Output: 3.5 (keeps the decimal)
Quando ambos os valores são inteiros, C# realiza a divisão de inteiros e elimina a parte decimal. Para manter a precisão decimal, precisas de usar um tipo decimal. Aprenderás a converter entre tipos numa secção posterior.