Classe Console
Pertence ao namespace System, integra a biblioteca de classes base do .NET (BCL)
Responsável por ler e escrever texto na janela do console, contém dois métodos para saída de dados: Write() / WriteLine()
No Visual Studio, posicione o cursor sobre a palavra Console e pressione a tecla F12 para visualizar os detalhes dessa classe

Você será direcionado para a visualização de metadados do Console (esse não é o código fonte original, e sim a função de descompilação nativa do VS; nela conseguimos ver todos os métodos, nome da classe, parâmetros aceitos e outras informações)

Dentro da classe Console temos as funções Write() / WriteLine() prontas para serem chamadas no seu código

Console.Write ()
Após exibir o texto não insere quebra de linha automática, várias saídas sequenciais ficam juntas na mesma linha
// Forma simplificada (se declaramos using System no topo, podemos remover o prefixo System.)
Console.Write("Hello erveryone.");
// Forma completa com o namespace
System.Console.Write("This is foxdevelop.");
System.Console.Write("This is com.");
System.Console.Write("good luck.");Code language: JavaScript (javascript)
Copie esse código dentro do método Main e execute o programa
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HelloDemo
{
internal class Program
{
static void Main(string[] args)
{
// Forma simplificada (se declaramos using System no topo, podemos remover o prefixo System.)
Console.Write("Hello erveryone.");
// Forma completa com o namespace
System.Console.Write("This is foxdevelop.");
System.Console.Write("This is com.");
System.Console.Write("good luck.");
}
}
}Code language: JavaScript (javascript)
Resultado da execução
Hello erveryone.This is foxdevelop.This is com.good luck.Code language: CSS (css)
Literais de texto devem estar envolvidos por aspas duplas, aspas simples não são válidas para strings
Console.WriteLine ()
Tem a mesma funcionalidade do Write, mas adiciona uma quebra de linha automática no final de cada saída, cada texto aparece em uma linha separada
Ou seja, depois de cada impressão o cursor pula para a linha de baixo e aguarda o próximo conteúdo a ser exibido
Console.WriteLine("Hello erveryone.");
Console.WriteLine("This is foxdevelop.");
Console.WriteLine("This is com.");
Console.WriteLine("good luck.");Code language: JavaScript (javascript)
Resultado da execução

Desta vez cada texto fica em uma linha nova, pois o cursor sempre desce após cada chamada do método
Strings formatadas
(Sintaxe antiga com placeholders, ainda amplamente utilizada em projetos legados)
- Estrutura dos parâmetros:
Console.WriteLine(stringFormato, valor0, valor1, ...) - O primeiro parâmetro é sempre a string de formato, usamos marcadores de substituição no formato
{número} - A numeração dos marcadores começa em
0e segue a ordem dos valores passados posteriormente - Caso tenha vários valores, separe-os com vírgulas
static void Main(string[] args)
{
Console.WriteLine(" {0} + {1} = {2}", 9, 6,9 + 6);
}Code language: JavaScript (javascript)
Resultado da execução
9 + 6 = 15
A string ” {0} + {1} = {2}” contém três marcadores numerados, correspondendo aos três parâmetros seguintes: 9, 6 e o resultado da soma (15). O programa substitui esses valores nas posições {0}, {1}, {2}
Interpolação de strings
Nova sintaxe lançada no C# 6.0+, muito prática: podemos escrever variáveis diretamente dentro dos placeholders
Adicione o símbolo $ no início da string para habilitar a interpolação; dentro das chaves {} escreva o nome das variáveis diretamente. O compilador troca automaticamente pelos valores sem precisar enviar parâmetros extras
static void Main(string[] args)
{
double pi = 3.14;
string webSite = "foxdevelop.com";
Console.WriteLine($"The Pi is {pi} and the website is {webSite}.");
}Code language: JavaScript (javascript)

Resultado da execução
The Pi is 3.14 and the website is foxdevelop.com.Code language: CSS (css)
Múltiplas variáveis
O exemplo abaixo demonstra vários placeholders de variáveis em um mesmo template de string
int latitude = 36;
int longitude = 17;
string north = "N", east = "E", south = "S";
Console.WriteLine($"Latitude {latitude}{north}, Longitude {longitude}{east}");
Code language: JavaScript (javascript)
Resultado após rodar o código
Latitude 36N, Longitude 17E
Observações importantes
Interpolações complexas facilitam misturar a ordem das variáveis. É fundamental dominar tanto a sintaxe antiga quanto a nova, pois muitos projetos em uso ainda utilizam os placeholders tradicionais
Impressão de texto no console