اپراتورها (Operators) نمادهایی هستند که برای انجام عملیات روی مقادیر و متغیرها استفاده می‌شوند. به عبارت ساده، وقتی دو مقدار (یا متغیر) را با یک علامت خاص ترکیب می‌کنی تا یک نتیجه بگیری، از یک اپراتور استفاده کرده‌ای!

اپراتور چیست؟ 🤔

هر معادله‌ای از دو بخش تشکیل شده:

🔹 عملوند (Operand): مقداری که روی آن عملیات انجام می‌شود.
🔹 اپراتور (Operator): نمادی که عملیات را مشخص می‌کند.

مثال ساده 👇

در این معادله:

100 + 50

عدد 100 و 50 عملوند هستند و علامت + یک اپراتور است که عملیات جمع را انجام می‌دهد.

حالا اگر این را داخل یک متغیر ذخیره کنیم:

var x = 100 + 50  // مقدار x برابر 150 خواهد شد

دسته‌بندی اپراتورها در Kotlin 🗂️

Kotlin اپراتورها را به چند دسته تقسیم می‌کند:

1️⃣ اپراتورهای حسابی (Arithmetic Operators) ➖ برای انجام عملیات ریاضی
2️⃣ اپراتورهای انتساب (Assignment Operators) ➖ برای مقداردهی به متغیرها
3️⃣ اپراتورهای مقایسه‌ای (Comparison Operators) ➖ برای مقایسه مقدارها
4️⃣ اپراتورهای منطقی (Logical Operators) ➖ برای بررسی شرط‌ها

بیایید هر کدام را جداگانه بررسی کنیم. 👇


1. اپراتورهای حسابی 🔢

این اپراتورها برای انجام عملیات ریاضی استفاده می‌شوند.

اپراتورنامتوضیحمثال
+جمع (Addition)دو مقدار را با هم جمع می‌کندx + y
-تفریق (Subtraction)مقدار دوم را از مقدار اول کم می‌کندx - y
*ضرب (Multiplication)دو مقدار را در هم ضرب می‌کندx * y
/تقسیم (Division)مقدار اول را بر مقدار دوم تقسیم می‌کندx / y
%باقی‌مانده (Modulus)باقی‌مانده تقسیم را برمی‌گرداندx % y
++افزایش (Increment)مقدار را یک واحد افزایش می‌دهد++x
--کاهش (Decrement)مقدار را یک واحد کاهش می‌دهد--x

مثال‌های عملی

var a = 10
var b = 3

println(a + b)  // خروجی: 13
println(a - b)  // خروجی: 7
println(a * b)  // خروجی: 30
println(a / b)  // خروجی: 3 (چون عدد صحیح است)
println(a % b)  // خروجی: 1 (باقی‌مانده 10 تقسیم بر 3)

🔹 چالش برای تو!
یک متغیر جدید به نام number تعریف کن و مقدار آن را 20 قرار بده. سپس مقدار آن را با استفاده از ++ و -- تغییر بده و نتیجه را در خروجی چاپ کن.


2. اپراتورهای انتساب 🎯

این اپراتورها برای مقداردهی و تغییر مقدار متغیرها استفاده می‌شوند.

اپراتورمثالمعادل با
=x = 5مقدار 5 را به x می‌دهد
+=x += 3x = x + 3
-=x -= 3x = x - 3
*=x *= 3x = x * 3
/=x /= 3x = x / 3
%=x %= 3x = x % 3

مثال‌های عملی

var x = 10

x += 5  // x = x + 5 -> حالا x مقدار 15 دارد
x -= 2  // x = x - 2 -> حالا x مقدار 13 دارد
x *= 3  // x = x * 3 -> حالا x مقدار 39 دارد
x /= 3  // x = x / 3 -> حالا x مقدار 13 دارد
x %= 4  // x = x % 4 -> حالا x مقدار 1 دارد

نکته: این روش‌ها کد را کوتاه‌تر و خواناتر می‌کنند.

🔹 تمرین!
یک متغیر score با مقدار 50 تعریف کن. سپس مقدار آن را 10 واحد افزایش بده و نتیجه را چاپ کن.

3. اپراتورهای مقایسه‌ای 🔍

اپراتورهای مقایسه‌ای برای مقایسه دو مقدار استفاده می‌شوند و همیشه مقدار true (درست) یا false (نادرست) را برمی‌گردانند.

اپراتورناممثالخروجی
==برابری (Equal to)x == yاگر x و y برابر باشند، مقدار true برمی‌گرداند
!=نامساوی (Not equal to)x != yاگر x و y برابر نباشند، مقدار true برمی‌گرداند
>بزرگ‌تر (Greater than)x > yاگر x از y بزرگ‌تر باشد، مقدار true برمی‌گرداند
<کوچک‌تر (Less than)x < yاگر x از y کوچک‌تر باشد، مقدار true برمی‌گرداند
>=بزرگ‌تر یا مساوی (Greater than or equal to)x >= yاگر x بزرگ‌تر یا برابر با y باشد، مقدار true برمی‌گرداند
<=کوچک‌تر یا مساوی (Less than or equal to)x <= yاگر x کوچک‌تر یا برابر با y باشد، مقدار true برمی‌گرداند

مثال‌های عملی

var a = 10
var b = 20

println(a == b)  // خروجی: false
println(a != b)  // خروجی: true
println(a > b)   // خروجی: false
println(a < b)   // خروجی: true
println(a >= 10) // خروجی: true
println(b <= 15) // خروجی: false

نکته: این اپراتورها معمولاً در شرط‌ها (Conditions) و حلقه‌ها (Loops) استفاده می‌شوند.

🔹 تمرین برای تو!
یک متغیر age تعریف کن و مقدار آن را 25 قرار بده. سپس بررسی کن که آیا مقدار age بزرگ‌تر از 18 هست یا نه؟


4. اپراتورهای منطقی 🧠

اپراتورهای منطقی برای ترکیب چندین شرط استفاده می‌شوند. این اپراتورها مقدار true یا false برمی‌گردانند.

اپراتورنامتوضیحمثال
&&و (AND)اگر هر دو شرط درست باشند، true برمی‌گرداند(x > 5 && x < 10)
||یا (OR)اگر حداقل یکی از شرط‌ها درست باشد، true برمی‌گرداند(x > 5 || x < 0)
!نقیض (NOT)مقدار شرط را معکوس می‌کند (true را به false و برعکس تبدیل می‌کند)!(x > 5)

مثال‌های عملی

var age = 22
var hasID = true

println(age > 18 && hasID)  // خروجی: true (چون هر دو شرط درست هستند)
println(age < 18 || hasID)  // خروجی: true (چون حداقل یکی از شرط‌ها درست است)
println(!(age > 18))        // خروجی: false (چون مقدار نقیض شده است)

نکته: این اپراتورها در تصمیم‌گیری‌ها (مثل بررسی ورود به سایت، بررسی اعتبار رمز عبور و غیره) بسیار پرکاربرد هستند.

🔹 چالش برای تو!
یک متغیر temperature با مقدار 30 تعریف کن. سپس بررسی کن که آیا دمای هوا بین 20 تا 35 هست یا نه؟ (با استفاده از &&)


🎯 جمع‌بندی
در این آموزش، با چهار نوع اپراتورهای Kotlin آشنا شدی:

اپراتورهای حسابی ➖ برای عملیات ریاضی مثل +, -, *, /, %
اپراتورهای انتساب ➖ برای مقداردهی مثل =, +=, -=, *=, /=, %=
اپراتورهای مقایسه‌ای ➖ برای مقایسه مقدارها مثل ==, !=, >, <, >=, <=
اپراتورهای منطقی ➖ برای ترکیب شرط‌ها مثل &&, ||, !