خانه / برنامه نویسی / عملگرها در سی شارپ – آموزش سی شارپ

عملگرها در سی شارپ – آموزش سی شارپ

csharp operators 1819 عملگرها در سی شارپ   آموزش سی شارپ

عملگرها در سی شارپ

عملگر نمادی است که به کامپایلر می گوید تا یک عملیات ریاضی یا منطقی را انجام دهد. در زبان برنامه نویسی سی شارپ مجموعه غنی از عملگرهای پیش ساخته وجود دارد که به صورت زیر دسته بندی شده است.

انواع عملگرها در زبان سی شارپ

  • عملگرهای ریاضی
  • عملگرهای رابطه ای
  • عملگرهای منطقی
  • عملگرهای بیتی
  • عملگرهای انتساب
  • عملگرهای متفرقه

در این آموزش عملگرهای ریاضی، رابطه ای، منطقی، بیتی، انتساب و غیره یک به یک توضیح داده می شوند.

عملگرهای ریاضی

در جدول زیر عملگرهای ریاضی پشتیبانی شده در زبان C# را مشاهده می کنید. فرض کنید متغیر A مقدار ۱۰ و متغیر B مقدار ۲۰ در خود ذخیره کرده است.

عملگر توضیحات مثال
 + برای جمع دو مقدار استفاده می شود. A + B = 30
مقدار عملوند راست را از مقدار عملوند چپ کم می کند. A – B = -10
* برای ضرب دو مقدار استفاده می شود. A * B = 200
/ مقدار عملوند راست را بر مقدار عملوند چپ تقسیم می کند. B / A = 2
% مقدار عملوند راست را بر مقدار عملوند چپ تقسیم می کند و باقیمانده را بر می گرداند B % A = 0
++ یک واحد به مقدار قبلی اضافه می کند. A++ = 11
یک واحد از مقدار قبلی کم می کند. A– = ۹

عملگرهای رابطه ای

در جدول زیر عملگرهای رابطه ای پشتیبانی شده در زبان C# را مشاهده می کنید. فرض کنید متغیر A مقدار ۱۰ و متغیر B مقدار ۲۰ در خود ذخیره کرده است.

عملگر توضیحات مثال
== اگر مقادیر دو عملوند با هم برابر باشد، شرط درست است. (A == B) is not true

!=

اگر مقادیر دو عملوند با هم برابر نباشد، شرط درست است. (A != B) is true
> اگر مقدار عملوند سمت چپ از مقدار عملوند سمت راست بزرگتر باشد، شرط درست است. (A > B) is not true
< اگر مقدار عملوند سمت چپ از مقدار عملوند سمت راست کوچکتر باشد، شرط درست است. (A < B) is true

>=

اگر مقدار عملوند سمت چپ بزرگتر یا مساوی مقدار عملوند سمت راست باشد، شرط درست است. (A >= B) is not true

<=

اگر مقدار عملوند سمت چپ کمتر یا مساوی مقدار عملوند سمت راست باشد، شرط درست است.

(A <= B) is true

عملگرهای منطقی

در جدول زیر عملگرهای منطقی پشتیبانی شده در زبان C# را مشاهده می کنید. فرض کنید متغیر A مقدار true و متغیر B مقدار false در خود ذخیره کرده است.

عملگر توضیحات مثال
&& عملگر AND (و منطقی)

اگر هر دو عملوند true باشند نتیجه شرط نیز true خواهد بود.

(A && B) is false
|| عملگر OR (یا منطقی)

اگر فقط یکی از دو عملوند true باشند نتیجه شرط نیز true خواهد بود.

(A || B) is true
! عملگر NOT (نقیض منطقی)

وضعیت منطقی عملوند را برعکس می کند (یعنی اگر true باشد، آن را false می کند و بلعکس).

!(A && B) is true

عملگرهای بیتی

از عملگرهای بیتی برای دستکاری بیت ها استفاده می شود. در زیر جدول درستی را برای عملگر های &، | و ^ مشاهده می کنید.

p q p & q p | q p ^ q
۰ ۰ ۰ ۰ ۰
۰ ۱ ۰ ۱ ۱
۱ ۱ ۱ ۱ ۰
۱ ۰ ۰ ۱ ۱

فرض کنید A = 60 و B = 13 باشد، آنگاه فرمت باینری آن ها به صورت زیر خواهد بود:

در جدول زیر عملگرهای بیتی پشتیبانی شده در زبان C# را مشاهده می کنید. فرض کنید متغیر A مقدار ۶۰ و متغیر B مقدار ۱۳ در خود ذخیره کرده است.

عملگر توضیحات مثال
& اگر هر دو عملوند true باشند، یک بیت در نتیجه کپی می کند. (A & B) = 12 که برابر است با ۰۰۰۰ ۱۱۰۰
| اگر یکی از عملوندها true باشند، یک بیت در نتیجه کپی می کند. (A | B) = 61 که برابر است با ۰۰۱۱ ۱۱۰۱
^ اگر مقدار هر دو عملوند یکسان نباشد (یعنی هر دو true یا هر دو false نباشند)، یک بیت در نتیجه کپی می کند.  (A ^ B) = 41که برابر است با ۰۰۱۱ ۰۰۰۱
~ عملگر یکانی نقیض می باشد و کارش این است که هر جا ۱ بود ۰ و هر جا ۰ بود ۱ می گذارد. (~A ) = 61 که برابر است با ۱۱۰۰ ۰۰۱۱
>> مقدار عملوند چپ را به مقدار بیت های تعیین شده در عملوند راست، به چپ شیفت می دهد. A << 2 = 240 که برابر است با ۱۱۱۱ ۰۰۰۰

>>

مقدار عملوند چپ را به مقدار بیت های تعیین شده در عملوند راست، به راست شیفت می دهد. A >> 2 = 15 که برابر است با ۰۰۰۰ ۱۱۱۱

عملگرهای انتساب

در جدول زیر عملگرهای انتساب پشتیبانی شده در زبان C# را مشاهده می کنید.

عملگر توضیحات مثال
= مقدار عملوند سمت راست را در عملوند سمت چپ قرار می دهد. C = A + B نتیجه جمع دو متغیر A و B را در متغیر C قرار می دهد.

+=

مقدار عملوند سمت راست را با مقدار عملوند سمت چپ جمع کرده و نتیجه را در عملوند سمت چپ قرار می دهد. C += A معادل C = C + A

-=

مقدار عملوند سمت راست را با مقدار عملوند سمت چپ کم کرده و نتیجه را در عملوند سمت چپ قرار می دهد. C -= A معادل C = C – A

*=

مقدار عملوند سمت راست را با مقدار عملوند سمت چپ ضرب کرده و نتیجه را در عملوند سمت چپ قرار می دهد. C *= A معادل C = C * A

/=

مقدار عملوند سمت چپ را بر مقدار عملوند سمت راست تقسیم کرده و نتیجه را در عملوند سمت چپ قرار می دهد. C /= A معادل C = C / A

%=

مقدار دو عملوند را بر هم تقسیم کرده و باقیمانده را در عملوند سمت چپ قرار می دهد. C %= A معادل C = C % A

<<=

عملگر انتساب شیفت به چپ C <<= 2 معادل C = C << 2

>>=

عملگر انتساب شیفت به راست C >>= 2 معادل C = C >> 2

&=

عملگر AND بیتی C &= 2 معادل C = C & 2

^=

عملگر انتساب exclusive OR بیتی C ^= 2 معادل C = C ^ 2

|=

عملگر انتساب inclusive OR بیتی C |= 2 معادل C = C | 2

عملگرهای متفرقه

در جدول زیر سایر عملگرهای مهمی که در زبان C# پشتیبانی می شوند را مشاهده می کنید.

عملگر توضیحات مثال
sizeof() اندازه نوع داده را برمی گرداند. sizeof(int) مقدار ۴ برمی گرداند.
typeof() نوع یک کلاس را برمی گرداند. typeof(StreamReader)
& آدرس یک متغیر را برمی گرداند. &a  آدرس واقعی یک متغیر را برمی گرداند.
* اشاره به یک متغیر. *a  یک اشاره گر به نام ‘a’ به متغیر a ایجاد می کند.
? : عبارت شرطی. اگر شرط درست باشد ؟ مقدار X : در غیر این صورت Y
is مشخص می کند که یک شیء از یک نوع خاص است یا خیر. If( Ford is Car) // checks if Ford is an object of the Car class
as عملیات Cast را بدون نمایش Exception انجام می دهد.

Object obj = new StringReader(“Hello”);

StringReader r = obj as StringReader;

تقدم عملگرها در زبان سی شارپ

در جدول زیر تقدم عملگرهای موجود در زبان C# را مشاهده می کنید.

دسته بندی عملگرها ترتیب
پسوندی () [] -> . ++ – – از چپ به راست
یگانی + – ! ~ ++ – – (type)* & sizeof از راست به چپ
ضربی * / % از چپ به راست
افزودنی + – از چپ به راست
شیفت << >> از چپ به راست
رابطه ای < <= > >= از چپ به راست
برابری == != از چپ به راست
AND بیتی & از چپ به راست
XOR بیتی ^ از چپ به راست
OR بیتی | از چپ به راست
AND منطقی && از چپ به راست
OR منطقی || از چپ به راست
شرطی ?: از راست به چپ
انتسابی = += -= *= /= %=>>= <<= &= ^= |= از راست به چپ
کاما , از چپ به راست

لينک منبع

درباره ی admin

همچنین ببینید

آموزش آپاچی اسپارک در ۷ روز – گیت

اگر به دنبال راهی هستید تا در مدت زمان کوتاهی مفاهیم اصلی Apache Spark را …

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *