شرط if...else (If...Else)
«شرط if...else در کاتلین» یعنی تصمیم گیری. اگر چیزی درست بود، یک کار انجام بده؛ وگرنه کار دیگر. «شرط (Condition)» همان پرسش بله/خیر است. مثل زنگ مدرسه: اگر زنگ خورد، از کلاس بیرون برو.
مقایسه ها و تصمیم گیری
برای ساخت شرط، از عملگرهای مقایسه مثل <, <=, >, >=, ==, != استفاده می کنیم. نتیجه همیشه بولی است؛ یعنی فقط true یا false.
ساختار if
اگر شرط درست باشد، بلوک کد اجرا می شود.
if (/* condition */) {
// کدی که وقتی شرط true است اجرا می شود
}
مثال ساده با عددهای ثابت.
if (20 > 18) {
println("20 is greater than 18")
}
همین کار با متغیرها.
val x = 20
val y = 18
if (x > y) {
println("x is greater than y")
}
else؛ وقتی شرط نادرست است
اگر شرط false شد، بخش else اجرا می شود.
val time = 20
if (time < 18) {
println("Good day.")
} else {
println("Good evening.")
}
// خروجی: Good evening.
else if؛ چند مسیر تصمیم
وقتی یک شرط کافی نیست، شرط های بعدی را امتحان کن.
val time = 22
if (time < 10) {
println("Good morning.")
} else if (time < 20) {
println("Good day.")
} else {
println("Good evening.")
}
// خروجی: Good evening.
if...else به عنوان «expression»
در کاتلین، if می تواند مقدار برگرداند و در متغیر ذخیره شود.
val time = 20
val greeting = if (time < 18) {
"Good day."
} else {
"Good evening."
}
println(greeting)
نکته: وقتی if را expression می کنی، وجود else الزامی است. نسخه تک خطی هم ممکن است، اما خوانایی کمتر دارد.
fun main() {
val time = 20
val greeting = if (time < 18) {
"Good day."
} else {
"Good evening."
}
println(greeting)
}
گام های تمرین سریع
- یک عدد بگیر و بزرگ تر بودنش از 10 را چک کن.
- اگر زوج بود «Even» چاپ کن؛ وگرنه «Odd».
- برای نمره، صبح/روز/شب را با else if چاپ کن.
نکته: برای شرط های زیاد، از when کمک بگیر. قبلش هم بخش بولی ها و عملگرها را مرور کن. این ها پایه تصمیم گیری اند.
جمع بندی سریع
- نتیجه مقایسه همیشه بولی است.
- if برای زمانی است که شرط true است.
- else زمانی اجرا می شود که شرط false باشد.
- else if چند مسیر تصمیم می سازد.
- if می تواند مقدار برگرداند.