Publicidade

Variáveis e constantes em C#

Bom dia pessoal.

Hoje vou falar um pouco das variáveis e constantes do C#.

Quem já programa tira esse assunto de letra, mas para quem está iniciando, pode ter alguma dificuldade, então por isso vou falar um pouco sobre as variáveis básicas utilizadas em C# e constantes, com elas praticamente tudo é possível, mas também é fácil cometer erros por não saber utilizá-las corretamente.

Os tipos básicos de variáveis, ou tipos primitivos em C# são comuns a outras linguagens, geralmente mudando somente a nomenclatura de uma ou outra, siga a lista:

Nome     .NET     Tipo                         Bits Intervalo
byte     Byte     Inteiro sem sinal            8    0 a 255
sbyte    SByte    Inteiro com sinal            8    -128 a 127
int      Int32    Inteiro com sinal            32   -2.147.486.648 a 2.147.483.647
uint     UInt32   Inteiro sem sinal            32   0 a 4.294.967.295
short    Int16    Inteiro com sinal            16   -32.768 a 32.767
ushort   UInt16   Inteiro sem sinal            16   0 a 65.535
long     Int64    Inteiro com sinal            64   -922.337.203.685.477.508 a 922.337.203.685.477.507
ulong    UInt64   Inteiro sem sinal            64   0 a 18.446.744.073.709.551.615
float    Single   Virgula com precisão simples 32   -3.402823e38 a 3.402823e38
double   Double   Virgula com precisão dupla   64   -1.79769313486232e308 a 1.79769313486232e308
char     Char     Um único caractere Unicode   16
bool     Boolean  Tipo booliano lógico         8    True ou False
string   String   Uma sequência de caracteres
decimal  Decimal  Fracionário com 29 dígitos   128  +-1.0 x 10e-28 a +-7.9 x 10e28

Então agora, vou explicar algumas delas e como usar, ao final, as outras serão auto-explicativas.

byte

Byte é um tipo de dado numérico, ele representa um número simples com 256 posições, começando do número 0 até o número 255 e ocupa 8 bits de memória. Normalmente é usado quando queremos representar números positivos pequenos, como por exemplo, idade, porque idade nunca ultrapassará 255 anos, então é mais eficiente utilizar o byte do outro tipo que ocupa mais memória.

 sbyte

Sbyte é um tipo de dado numérico, ele representa um número simples com 256 posições, mas diferente do byte, ele possui valores negativos começando do número -128 até o número 127, ocupando 8 bits de memória. Normalmente é usado quando queremos representar números pequenos mas que possuam valores negativos, como por exemplo, temperatura ambiente em graus célsius.

int 

Int é um tipo de dado numérico, ele representa um número simples com 4.294.967.296 posições, começando do número -2.147.486.648 até o número 2.147.483.647, ocupando 32 bits de memória. Este é o tipo numérico mais utilizado de todos, pois ele permite números muito grandes desde os negativos até os positivos, normalmente utilizado em contadores, como por exemplo, o placar de pontos de um jogo.

 uint

Uint é um tipo de dado numérico, ele representa um número simples com 4.294.967.296 posições, começando do número 0 até o número 4.294.967.297, ocupando 32 bits de memória. Diferente do int, este tipo de dados não aceita valores negativos, normalmente utilizado em identificadores, como por exemplo, o id de itens.

short

Short é um tipo de dado numérico, ele é exatamente igual ao int, porém, com um intervalo menor, indo do número -32.768 até o número 32.767 e ocupando 16 bits de memória.

ushort

Ushort é um tipo de dado numérico, ele é exatamente igual ao uint, porém, com um intervalo menor, indo do número 0 até o número 65.535 e ocupando 16 bits de memória.

long

Long é um tipo de dado numérico, ele representa um número simples gigantesco, que inicia no número -922.337.203.685.477.508 e vai até o número 922.337.203.685.477.507, ocupando 64 bits de memória. Normalmente é usado para contadores gigantescos sem casas decimais, como por exemplo, a contagem de itens de uma distribuidora.

ulong

Ulong é um tipo de dado numérico, ele representa um número simples gigantesco, que inicia no número 0 e vai até o número 18.446.744.073.709.551.615, ocupando 64 bits de memória. Normalmente é usado para contadores gigantescos sem casas decimais e positivos, como por exemplo, o total de pessoas de uma cidade ou país.

float

Ulong é um tipo de dado numérico, ele representa um número gigantesco com casas decimais, que inicia no número -3.402823e38 e vai até o número 3.402823e38, ocupando 32 bits de memória. Normalmente é usado para contadores gigantescos monetários, como por exemplo, saldos financeiros.

double

Double é um tipo de dado numérico, ele representa um número gigantesco com casas decimais de maior precisão que o float, e inicia no número -1.79769313486232e308 até o número 1.79769313486232e308, ocupando 64 bits de memória. Normalmente é usado para contadores monetários gigantescos, como por exemplo, saldos financeiros

char

Char é um tipo de dado texto, que representa um único caracter alfanunérico e ocupa 16 bits. Normalmente utilizado como identificador, como por exemplo, para notas de um boletim ('A','B','C','D','E','F').

 bool

Bool é um tipo de dado lógico, ele aceita somente 2 valores verdadeiro (True) e falso (False), ocupa 8 bits. Normalmente usados para status, como por exemplo, se o aluno foi aprovado (True) ou não (False).

string

String é um tipo de dado texto, que representa uma cadeia de caracteres com tamanho e ocupação de memória indefinidos, sendo estes diretamente ligados ao conteúdo da variável. Este tipo é como se fossem diversos "char" em sequência. Este campo é amplamente utilizado para textos, como nomes, descrições, códigos, etc...

decimal

Decimal é um tipo de dado numérico, ele representa um número fracionário com casas decimais, que inicia no número +-1.0 x 10e-28 e vai até o número +-7.9 x 10e28, ocupando 128 bits de memória. Normalmente é usado para cálculos matemáticos e/ou científicos, como por exemplo, fórmulas complexas de física que exigem grande precisam decimal.

Estes são a maioria de tipos de dados utilizados em variáveis em C# e em muitas outras linguagens.

Todas as variáveis numéricas são expressas simplesmente pelos seus valores como: 1, -5, 15.45, -7.5…

Todas as variáveis texto são expressas entre aspas como: “Juca Bala”, “Motor elétrico”, “Av. Continental”, “45”, “3,3”, “4.5”…

A variável bool é a única que parece texto e não usa aspas é expressa simplesmente como True ou False.

Notem que nas variáveis de texto, podemos ter valores numéricos, mas neste caso, quando um número está gravado em uma variável do tipo texto, ela passa a ser texto e perde as propriedades de número. (Mais adiante explicarei)

Como utilizar uma variável?

Para usar uma variável, você deve declará-la dando um nome válido para ela, um tipo válido e um valor ou não, sendo que existem algumas regras para nomear variáveis que por padrão nunca devem ser iniciadas por nome ou caracteres especiais, com exceção do caracter underline “_”, mas para ficar fácil, sempre inicie o nome da variável com letra. Abaixo alguns exemplo:

string Nome;                              //Variável string chamada Nome que inicia sem valor
string Endereco = "Av. Fortaleza, N° 15"; //Variável string chamada Endereco que inicia com valor "Av..."
byte Idade;                               //Variável byte chamada Idade
int Filhos = 2;                           //Variável int chamada Filhos que inicia com valor 2
bool Casado = False;                      //Variável bool que inicia com valor False

Reparem, algumas variáveis possuem o sinal de “=” a direita, simbolizando que elas já iniciam com um valor atribuído, enquanto as que não possuem o sinal de “=” iniciam em branco.

Obs.: Notem que todas as linhas terminam em “;”, pois em C# o “;” determina o final da linha, assim, a cada final de linha deve existir um “;”, dadas algumas exceções.

Quando uma variável é iniciada sem valor, em algum momento vamos atribuir um valor, e fazemos isso com o sinal de “=”, como seguem os exemplos:

Nome = "Aaron Pierre";
Idade = 35;
Casado = True;

O que temos que atentar é que, variáveis texto devem possuir o valor atribuído entre aspas, enquanto que os valores numéricos não devem possuir as aspas, e nem mesmo o bool.

Se tentarmos atribuir um valor numérico com aspas, ou um valor texto sem aspas, ocorrerá erro. Abaixo seguem alguns exemplos de atribuições de valores erradas:

Nome = Aaron Pierre;
Idade = "35";
Casado = "True";

 Todos os casos acima geram erros.

Quando 1 + 1 = 11

Apesar das variáveis de texto aceitarem valores numéricos desde que dentro de aspas, os números não são números!

Vamos imaginar uma soma de duas variáveis, sendo X = 1 e Y = 1, teremos o seguinte código:

int X = 1;
int Y = 1;

X + Y = 2;

 A grosso modo, este é o correto, e se fizermos isso com variáveis de texto?

string X = "1";
string Y = "1";

X + Y = "11";

 Vejam que quando somamos números a matemática é aplicada, mas quando somamos strings, a matemática é ignorada, sendo os valores concatenados, ou seja, o caracter “1” da variável Y é adicionado a sequencia de string “1” da variável X, por isso que a soma resulta em “11” (reparem as aspas, denotando texto)!

Quando 5 / 2 = 2

Outro caso são as divisões, quando dividimos dois números inteiros e armazenamos em outra variável inteira, as frações são excluídas, dessa forma:

int X = 5;
int Y = 2;
int Resultado;

Resultado = X / Y;

O Resultado é 2

 Porque o resultado é 2? Porque são dois números inteiros divididos entre si e gravados em uma variável inteira, logo as casas decimais somem, arredondando o valor do resultado.

Estes são alguns exemplos simples, existe muito mais coisa, muitos mais casos que aos poucos irei abordando.

Constantes

O que são as constantes? Nada mais são do que variáveis que nunca mudam de valor, elas iniciam com um valor e vão permanecer assim para sempre!

Por exemplo, digamos que quero calcular uma margem de lucro de 10% sobre vendas:

const double Margem = 1.1;

double Preco = 100;
double Total;

Total = Preco * Margem;

O resultado de Total é 110

 Eu declarei uma constante chamada Margem, do tipo double com valor de 1.1, lembrando que multiplicar um valor por 1.1, é o mesmo que adicionar 10% ao valor original.

Se eu quiser modificar a margem de lucro para 50%, basta alterar a constante dessa forma:

const double Margem = 1.5;

double Preco = 100;
double Total;

Total = Preco * Margem;

O resultado de Total é 150

Viram como as constantes são simples? Na realidade elas são iguais as variáveis, porém, sempre com valor inicial e imutável.

Por hoje é só, acho que deixei esse assunto bem esclarecido pra muita gente.

Dúvidas, escrevam aqui embaixo.

Abraço

Deixe um comentário

O seu endereço de e-mail não será publicado.