Wzorce

Nieco wcześniej pokazywaliśmy, jak korzystać z operatora is do sprawdzania, czy referencja nadaje się do konwersji na jakiś określony typ i zaraz potem do używania skonwertowanej wartości:

if (obj is string s)
  Console.WriteLine (s.Length);

Mechanizm ten wykorzystuje jeden z rodzajów wzorców, a mianowicie wzorzec dopasowania typu (ang. type pattern). Natomiast sam operator is obsługuje także inne wzorce, wprowadzone w nowszych wersjach C#. Wzorce te są obsługiwane w następujących kontekstach:

  • za operatorem is (zmienna jest wzorcem),
  • w instrukcjach switch,
  • w wyrażeniach switch.

Wzorzec dopasowania typu stosowaliśmy już przy okazji omawiania instrukcji switch (zobacz podpunkty „Instrukcja switch z typami” oraz Operator is”). W tym podrozdziale ...

Get C# 10 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.