Definição – O que significa Operador IS?
O operador IS, em C #, é um operador usado para verificar dinamicamente se um objeto é compatível com um determinado tipo.
Ao trabalhar com tipos de referência envolvendo tipos básicos e derivados, torna-se essencial converter o objeto do tipo base para o tipo derivado e, em seguida, chamar o método. Caso a conversão simples da base para o tipo derivado não seja bem-sucedida, isso resultará no lançamento de uma exceção. O operador is é usado para testar o sucesso da operação de conversão sem causar uma exceção. É um operador eficiente. Ele não apenas verifica o lançamento seguro e bem-sucedido de um objeto, mas também obtém o valor de lançamento em um lançamento bem-sucedido. No entanto, é freqüentemente usado no código para determinar o tipo de um objeto sem qualquer requisito para a operação de conversão.
Como o operador is sempre retorna um valor booleano (verdadeiro ou falso) após a operação de conversão e nunca lança uma exceção, é altamente confiável para ser usado em um código de aplicativo. Além disso, permite verificar o tipo de um objeto com um determinado tipo de forma mais simples, o que reduz o tamanho do código e o esforço de desenvolvimento.
Definirtec explica o operador IS
O operador is é um operador de teste de tipo com dois parâmetros, que incluem uma expressão de um tipo de referência. O tipo de referência deve ser verificado para conversão e o tipo de destino para o qual a expressão deve ser convertida. O operador is retorna true se a expressão fornecida que representa o objeto não for nula e a expressão for bem-sucedida na projeção para o tipo especificado. Caso contrário, retorna falso.
O operador is não pode ser sobrecarregado para fornecer nenhuma outra semântica. Pode ser usado para verificar as conversões de referência, boxing e unboxing, mas não para conversões definidas pelo usuário. Embora a compatibilidade de tipo da expressão seja avaliada em tempo de execução, o compilador C # gera um aviso durante a compilação quando o operador is é usado em tipos que não são compatíveis.
Por exemplo, o operador is pode ser usado para verificar se o parâmetro passado para um método é do tipo, Aluno ou seu tipo derivado, onde Aluno é um tipo usado para representar as informações relacionadas ao aluno em um aplicativo.
O operador is difere do operador AS porque o primeiro resulta em duas conversões, enquanto o último evita a dupla conversão para uma única etapa e, portanto, um melhor desempenho é obtido usando o operador as.
Esta definição foi escrita no contexto de C #