is işleci (C# başvurusu)
isişleci, bir ifadenin sonucun verilen türle uyumlu olup olmadığını denetler. Tür testi işleci hakkında bilgi için Tür testi ve tür tür is işleçleri makalesinde is işleci bölümüne bakın.
C# 7.0'dan itibaren, aşağıdaki örnekte de olduğu gibi işleci kullanarak bir ifadeyi is desene göre eşlersiniz:
static bool IsFirstFridayOfOctober(DateTime date) =>
date is { Month: 10, Day: <=7, DayOfWeek: DayOfWeek.Friday };
Yukarıdaki örnekte işleci, iç içe sabit ve ilişkisel desenlere sahip bir özellik is deseniyle bir ifadeyi eşler.
işleci is aşağıdaki senaryolarda yararlı olabilir:
Aşağıdaki örnekte olduğu gibi bir ifadenin çalışma zamanı türünü kontrol etmek için:
int i = 34; object iBoxed = i; int? jNullable = 42; if (iBoxed is int a && jNullable is int b) { Console.WriteLine(a + b); // output 76 }Yukarıdaki örnekte, bir bildirim deseninin kullanımı gösterir.
Aşağıdaki örnekte
nullde olduğu gibi için denetimi yapmak için:if (input is null) { return; }ile bir ifadeyi
nulleşleyenin, derleyici hiçbir kullanıcı aşırı yüklemesi veya==!=işlecinin çağrılmaycazın garantisini verir.C# 9.0'dan itibaren, aşağıdaki örnekte de olduğu gibi null olmayan bir denetim yapmak için olumsuzlama deseni kullanabilirsiniz:
if (result is not null) { Console.WriteLine(result.ToString()); }
Not
işleci tarafından desteklenen desenlerin tam listesi is için bkz. Patterns.
C# dili belirtimi
Daha fazla bilgi için bkz. C# dil belirtimlerinin is işleci bölümü ve aşağıdaki C# dil teklifleri: