O .NET Core 3.x e o .NET Standard 2.1 suportam sintaxe C# 8.0, introduzem muitas funcionalidades e adicionam nova sintaxe de características: membros somente de leitura, métodos padrão de interface, melhorias de correspondência de padrões, padrões de atributos, padrões de tupla, padrões de posição, expressões de comutação, uso de declarações, funções locais estáticas, fluxos assíncronos, índices e intervalos, atribuições de fusão nula, etc. Este artigo explicará os novos pontos de conhecimento do C# 8.0.
Índice e escopo
Os seguintes tipos .NET suportam tanto índices quanto intervalos: Array, String, Span e ReadOnlySpan. A lista suporta índices, mas não intervalos
Exemplo 1: A data de nascimento da pessoa que obteve o número de identificação
Exemplo 2: Obtenha o conteúdo do último pedaço da sequência
Exemplo 3: Remover a última parte
Interruptor
expressão
Modo de atributos
Padrão de tuplas
Modo de localização
Alguns tipos incluem um método de Desconstrução que desconstrói suas propriedades em variáveis discretas. Se você tiver acesso ao método Deconstruct, pode usar Padrões de Posição para verificar as propriedades de um objeto e usar essas propriedades para padrões. Considere a seguinte classe Point que contém um método de Desconstrução para criar variáveis discretas para X e Y:
Além disso, considere a seguinte enumeração das várias posições que representam o quadrante:
O método a seguir usa o padrão de posição para extrair os valores de x e y. Em seguida, ele usa a cláusula when para determinar o quadrante para aquele ponto:
Atribuições de fusão nula
Expressões construtoras
Usando a instrução
A declaração using é uma declaração de variável precedida pela palavra-chave using. Ele instrui o compilador a declarar variáveis a serem tratadas ao final do escopo fechado. Por exemplo, o código para escrever um arquivo de texto é o seguinte:
No exemplo anterior, o arquivo é processado quando os parênteses corretos do método são alcançados. Este é o fim do alcance do arquivo declarado. O código anterior é equivalente ao seguinte código usando a instrução clássica usando:
No exemplo anterior, o arquivo é processado quando os parênteses corretos associados à instrução using são alcançados. Em ambos os casos, o compilador gerará uma chamada para Dispose(). Se a expressão na instrução using não estiver disponível, o compilador gerará um erro.
Recursos
O login do hiperlink está visível.
O login do hiperlink está visível. |