C# Language
IS Keyword
In C#, the 'is' keyword is used for type testing. It checks whether an object is compatible with a given type. The syntax for using is is as follows:
if (someObject is SomeType) { // Code to be executed if someObject is of type SomeType } else { // Code to be executed if someObject is NOT of type SomeType }
Here, 'someObject' is the object you want to test, and 'SomeType' is the type you want to check against. If 'someObject' is an instance of 'SomeType' or a derived type, the condition will be true; otherwise, it will be false.
• Here's a simple example:
object myObject = "This is a String."; if (myObject is string) { Console.WriteLine("myObject is a string."); } else { Console.WriteLine("myObject is NOT a string."); }
myObject is a string.
In this example, the output will be "myObject is a string," as 'myObject' is assigned a string value.
⤑ Here's another small program using multiple 'if-else' statements and the 'is' keyword to categorize objects based on their types:
using System; class Program { static void Main() { object[] values = { 42, 3.14, "Hi", true, 'A' }; foreach (var value in values) { if (value is int) { Console.WriteLine($"{value} is an integer."); } else if (value is double) { Console.WriteLine($"{value} is a double."); } else if (value is string) { Console.WriteLine($"{value} is a string."); } else if (value is bool) { Console.WriteLine($"{value} is a boolean."); } else { Console.WriteLine($"{value} is of an unrecognized type."); } } } }
42 is an integer. 3.14 is a double. Hi is a string. True is a boolean. A is of an unrecognized type.
This example illustrates the use of multiple 'if-else' statements with the 'is' keyword to handle different types of objects.
Remember: Keep in mind that the 'is' keyword also works with user-defined types and interfaces. It's a convenient way to check the type of an object before attempting type-specific operations to avoid runtime errors.
What's Next?
We've now entered the finance section on this platform, where you can enhance your financial literacy.