TOC

This article has been localized into Portuguese by the community.

Tipos de dados:

Inteiros

Computadores e números andam de mãos dadas, por isso, quando se programa, muitas vezes você vai encontrar o seu próprio trabalho com números em muitas formas. Um dos tipos mais usados em C # é o inteiro. A palavra "integer" é latina para "whole", o que faz sentido, porque um inteiro é um número sem parte fracionária - um número inteiro.

Int32 - o inteiro padrão

Como discutiremos daqui a pouco, o C # vem com muitos tipos diferentes de inteiros, mas o que você provavelmente usará na maior parte do tempo é o Int32 - um inteiro de 32 bits. Pode ser declarado assim:

Int32 number;

No entanto, como esse é realmente o tipo inteiro mais usado em C #, ele possui um atalho - você pode escrever "int" e o C # saberá automaticamente que você está falando de um Int32. Você pode também atribuir um valor a ele, na mesma declaração em que você o declara:

int number = 42;

Observe a diferença no case embora - Int32 refere-se a uma classe, então ele começa com um I maiúsculo, enquanto int é uma palavra-chave, então ele começa com um i minúsculo.

O Int32 é um chamado inteiro assinado, que pode conter um número no intervalo de -2.147.483.648 a 2.147.483.647. Você pode verificar isso acessando as constantes Int32.MinValue e Int32.MaxValue. Se você precisar de números maiores, ou se já sabe que os números com os quais você trabalhará nunca atingirão os limites de um número inteiro, você poderá escolher outro tipo.

Tipos inteiros

Como já mencionado, há muitos tipos inteiros em C #. De fato, muitos para mencioná-los todos neste artigo, mas aqui estão os mais comuns que você provavelmente encontrará de tempos em tempos:

  • byte - um inteiro sem sinal que pode conter um número entre 0 e 255.
  • short - um inteiro assinado de 16 bits, que pode conter um valor entre -32.768 e 32.767. Também conhecido sob seu nome formal Int16 .
  • long - um inteiro de 64 bits, que pode conter um valor entre -9,223,372,036,854,775,808 e 9,223,372,036,854,775,807. Também conhecido sob seu nome formal Int64 .

Se você precisar de um número maior que o long , você pode usar um ulong - é um inteiro sem sinal, que pode conter um valor de até 18.446.744.073.709.551.615. Por outro lado, como é um inteiro não assinado, ele não permite valores negativos. Da mesma forma, você pode encontrar versões não assinadas de outros tipos inteiros, que funcionam da mesma maneira, como uint e ushort .

Matemática com números inteiros

Ao trabalhar com números inteiros e números em geral, você pode estar procurando fazer alguns cálculos. Isso é muito fácil na maioria das linguagens de programação, incluindo C #, onde você pode usar todos os operadores matemáticos mais comuns. Por exemplo, você pode fazer um cálculo como este:

int a = 42;  
int b = 8;  

Console.WriteLine(a + b);

O número 50 será impresso no console. Observe como você poderia lidar com esse cálculo sem fazer nada de especial - basta especificar as variáveis e o operador matemático mais, e você está pronto para ir.

O mesmo acontece se você quiser usar outros operadores matemáticos e, é claro, também pode usar números que ainda não estão definidos como uma variável:

int a = 42;  
int b = 8;  

Console.WriteLine(200 - ((a + b) * 2));

Observe o conjunto extra de parênteses - assim como na matemática normal, você terá que lidar com a ordem de operações .

Inteiros e divisão

Agora que adicionamos, subtraímos e multiplicamos, vamos falar um pouco sobre divisão. Considere o seguinte exemplo:

int a = 10;
int b = 3;

Console.WriteLine(a / b);

Você provavelmente pode calcular isso em sua cabeça e assim você sabe que o resultado deve ser 3.33333333333. Mas se você executar o exemplo, verá algo estranho - o resultado é 3. O motivo é que, se você fizer uma divisão entre dois inteiros, C # também retornará um inteiro, e como um inteiro não pode conter nenhuma fração, o resultado é apenas arredondado (neste caso até 3). Então, se você quer um resultado com frações, você deve declarar uma das variáveis como uma variável de ponto flutuante (mais sobre aquelas mais tarde) ou tipografar uma delas na hora:

int a = 10;
int b = 3;

Console.WriteLine((float)a / b);

Digite conversão/casting

Vamos falar mais sobre como você pode converter de e para um inteiro. Primeiro de tudo, o C # permite conversões implícitas e explícitas entre vários tipos inteiros. Um exemplo de conversão implícita poderia ser assim:

int a = 10;
long b = a;

Em outras palavras, se você tem um inteiro, você pode tratá-lo como um longo. Isso é possível porque o C # sabe que o valor de um inteiro pode caber dentro de um longo. Por outro lado, o contrário pode não ser verdade - portanto, você terá que usar uma conversão explícita para isso:

long a = 10;
int b = (int)a;

Isto é claro para que você saiba que está fazendo algo que potencialmente poderia dar errado - se você tem um valor longo que excede a capacidade de um inteiro regular, você está com problemas!

Resumo

Trabalhar com números, como inteiros e pontos flutuantes, é algo que você estará fazendo muito em praticamente qualquer tarefa de programação. Com seu novo conhecimento sobre inteiros e como trabalhar com eles, é hora de passar para valores de ponto flutuante no próximo artigo.

This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!