Definición - ¿Qué significa operador IS?
El operador IS, en C #, es un operador que se utiliza para verificar dinámicamente si un objeto es compatible con un tipo determinado.
Al trabajar con tipos de referencia que involucran tipos base y derivados, resulta esencial convertir el objeto de tipo base en tipo derivado y luego llamar al método. En caso de que la conversión simple de tipo base a derivado no tenga éxito, se generará una excepción. El operador is se usa para probar el éxito de la operación de conversión sin causar una excepción. Es un operador eficiente. No solo comprueba el lanzamiento seguro y exitoso de un objeto, sino que también obtiene el valor de lanzamiento de un lanzamiento exitoso. Sin embargo, se usa a menudo en el código para determinar el tipo de un objeto sin ningún requisito para la operación de conversión.
Dado que el operador is siempre devuelve un valor booleano (verdadero o falso) después de la operación de conversión y nunca arroja una excepción, es muy confiable para usarse en un código de aplicación. Además, permite verificar el tipo de un objeto con un tipo determinado de forma más sencilla, lo que reduce el tamaño del código y el esfuerzo de desarrollo.
Techinfo explica el operador IS
El operador is es un operador de prueba de tipo con dos parámetros, que incluyen una expresión de un tipo de referencia. Se debe verificar el tipo de referencia para la conversión y el tipo de destino al que se debe convertir la expresión. El operador is devuelve verdadero si la expresión dada que representa el objeto no es nula y la expresión tiene éxito en la conversión al tipo especificado. De lo contrario, devuelve falso.
El operador is no se puede sobrecargar para proporcionar ninguna otra semántica. Se puede usar para verificar conversiones de referencia, encajonamiento y desempaquetado, pero no para conversiones definidas por el usuario. Aunque la compatibilidad de tipos de la expresión se evalúa en tiempo de ejecución, el compilador de C # genera una advertencia durante la compilación cuando el operador is se usa en tipos que no son compatibles.
Por ejemplo, el operador is puede usarse para verificar si el parámetro pasado a un método es de tipo, Estudiante o su tipo derivado, donde Estudiante es un tipo que se usa para representar la información relacionada con el estudiante en una aplicación.
El operador is se diferencia del operador AS en que el primero da como resultado dos lances, mientras que el segundo evita el lance doble en un solo paso y, por lo tanto, se logra un mejor rendimiento utilizando como operador.
Esta definición se escribió en el contexto de C #