Olá de novo, se você ainda não viu o artigo Guia Rápido de C# Para Iniciantes – Parte I recomendo que faça a leitura dele antes de iniciar a Parte II, principalmente se você for iniciante em programação C#.
Nunca mais digite Console.Write()
, Console.WriteLine()
ou Console.ReadLine()
Você não precisa ficar escrevendo Console.
toda vez que quiser escrever um comando de entrada ou saída
Na cláusula using escreva using static System.Console;
e depois sempre que quiser executar um Console.Write
ou Console.WriteLine você precisar escrever apenas Write
ou WriteLine
conforme mostra o exemplo;
Esta dica também vale para o ReadLine();
Se você estiver usando o dotnetfiddle.net para desenvolver, você deverá mudar o compilador para Roslyn 3.8.
.
Variáveis na mesma linha.
Você pode declarar uma ou mais variáveis do mesmo tipo em uma mesma linha. Ao invés de declarar assim;
int n1 = 10;
int n2 = 15;
int n3 = 25;
Você pode simplesmente fazer assim, separando por vírgula;
int n1=10, n2=15, n3=25;
Declaração implícita de variáveis.
Quando aprendemos a programar, uma das primeiras coisas que aprendemos é declaração de variáveis e os tipos de variáveis que podemos declarar, sendo que as mais comuns são o int
, double
e string
. Mas existe um tipo de variável que é genérica, ou seja, que aceita praticamente qualquer tipo de valor, o valor pode ser tanto numérico (int ou double) como literal (string).
Este tipo de variável é a var
, ao invés de declarar as variáves assim;
string nome = "Anderson";
int idade = 18;
double salario = 1250.79;
podemos simplesmente declarar assim;
var nome = "Anderson";
var idade = 18;
var salario = 1250.79;
O uso das aspas é suficiente para indicar ao var que o valor da variável é uma string, o uso do ponto flutuante indica que se trata de um double, e um valor numérico inteiro fora das aspas indica que se trata de um inteiro. Fácil não?
Importante: Se você quer usar o var para guardar valores numéricos, evite usar declarações var junto com Console.ReadLine()
, caso contrário os valores sempre serão tratados como string. Caso queira utilizar a declaração var para guardar valores numéricos, prefira declarar as variáveis antes, por exemplo;
// forma errada de usar o var com ReadLine()
var numero = Console.ReadLine();
Prefira;
// forma correta de usar o var com ReadLine
()var numero = 0;
numero = Console.ReadLine();
Interpolação de strings. Nunca mais use concatenação
É incrível o esforço do professor de programação ao ensinar concatenação pois a primeira impressão pode parecer confusa, principalmente no C# aonde usamos o sinal de + para operações de soma e também para concatenar.
Mas a verdade é que existe uma forma muito mais simples de juntar strings e variáveis sem termos que usar o sinal de +.
Veja este este exemplo usando concatenação;
string nome = "Anderson";
int anoNascimento = 1984;
Console.WriteLine("Olá " + nome + ", você tem aproximadamente " + (2021 - anoNascimento) + " anos.");
Para usarmos interpolação precisamos apenas adicionar um cifrão no início da string e substuir o sinal de + por um jogo de chaves, ficando assim;
Console.WriteLine($"Olá {nome}, você tem aproximadamente {(2021 - anoNascimento)} anos.");
Se você estiver usando o dotnetfiddle.net para desenvolver, você deverá mudar o compilador para Roslyn 3.8.
.
Constantes.
Em algumas aplicações temos variáveis cujo o valor nunca muda, para elas podemos acrescentar a declaração const
que nos permite organizar melhor o nosso programa. É importante entender que declararmos o const
, a variável não poderá mais receber um novo valor, ou o programa retornará erro;
Veja um exemplo;
string nome = "Anderson";
const int anoAtual = 2021; // este valor sempre será fixo
int anoNascimento = 1984;
Encerre seu programa com estilo usando GOTO
O goto é um laço que permite você mudar o curso da aplicação dependendo das decisões do usuário. Um exemplo bem bacana do uso do goto é perguntar ao usuário se ele deseja encerrar a aplicação ou se ele deseja executá-la novamente.
Para isso podemos definir um laço goto conforme mostra o exemplo;
int n1, n2, n3;
inicio: // define o bloco de código a ser repetido.
Console.WriteLine("Informe o valor do 1ª nota: ");
n1 = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("Informe o valor do 2ª nota: ");
n2 = Convert.ToInt16(Console.ReadLine());
Console.WriteLine("Informe o valor do 3ª nota: ");
n3 = Convert.ToInt16(Console.ReadLine());
Console.Write("Deseja fazer um novo cálculo (S/N)");
string resposta = Console.ReadLine();
if (resposta == "S") // Se o usuário digitar S
{
goto inicio; // o programa retorna para a linha na qual está escrito inicio:
}