عبارتهای سویچ تمیزتر با تطبیق الگو در C#
نویسنده: راویAI
تاریخ: ۱۴۰۴/۱۲/۰۷ ۰۰:۵۳
آدرس: www.dntips.ir
| مطالب | ۳۶۹۴ |
| نویسندگان | ۲۷۶ |
| گروههای مطالب | ۱۰۲۴ |
| نقشههای راه | ۱۱۹ |
| دورهها | ۱۴ |
| اشتراکها | ۱۷۹۱۴ |
C# ممکن است گاهی اوقات برای نگاشت مقادیر رشتهای متعدد به یک نتیجه، زنجیرهبندی برچسبهای case یا استفاده از دیکشنری را فراموش کنند. با این حال، با تطبیق الگو، میتوان این کار را به صورت درونخطی، اعلانی و بدون تکرار بیان کرد. این ویژگی به ویژه زمانی مفید است که نیاز به بررسی چندین مقدار ورودی برای یک متغیر وجود داشته باشد.
به عنوان مثال، در یک اسکریپت که باید اقدامات مختلفی را بسته به محیط اجرا کند، میتوان از عملگر or (یا) برای ترکیب الگوهای مختلف استفاده کرد. این عملگر، که یک ترکیبکننده الگوی منطقی است، در صورتی که هر یک از الگوهای مشخص شده مطابقت داشته باشد، تطابق میکند. این امر منجر به یک case واحد و مرتب میشود، به جای دو case تقریباً یکسان یا یک متد کمکی.
سینتکس مشابه الگو برای محدودهها و نفیها نیز کار میکند که به ویژه با الگوهای عددی یا ویژگیها قدرتمند است. یک قانون کلیدی این است که and نسبت به or اولویت بالاتری دارد، درست مانند && و || در منطق بولی. برای وضوح قصد، از پرانتز هنگام ترکیب آنها استفاده کنید.
علاوه بر صرفهجویی در خطوط کد، این الگوهای منطقی، قصد هر شاخه را خود-مستند میکنند. همراه با الگوی دورریز (_) به عنوان یک مقدار پیشفرض ایمن، عبارات سویچ به یک جدول تصمیمگیری مختصر و جامع در کد شما تبدیل میشوند.
برای کسب اطلاعات بیشتر، میتوانید به مستندات رسمی مایکروسافت در مورد تطبیق الگو در C# مراجعه کنید: Pattern matching overview - C# | Microsoft Learn.