محمد زارع شیرکوهی
محمد زارع شیرکوهی
خواندن ۴ دقیقه·۳ سال پیش

شرط ها در کاتلین : آموزش کاتلین (قسمت 11)

قبل از هر چیز، اگه به برنامه نویسی اندروید علاقه مندی، من تو سایتم یک دوره آموزش برنامه نویسی اندروید از سطح کاملا مبتدی تا پیشرفته گذاشتم که کاملا رایگان میتونی ازش استفاده کنی، پس به دوره صفر مطلق اندروید یه سر بزن!
شرط ها در کاتلین
شرط ها در کاتلین

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

راستی قبل از اینکه ادامه این آموزش رو بخونی، میدونستی ما تو سایت ترولرن یه دوره آموزش رایگان برنامه نویسی کاتلین بصورت مقاله محور داریم، این لیست آموزش‌های رایگان ما هستش حتما ببین چون کل کاتلین رو بصورت کاملا رایگان داریم آموزش می‌دیم.

کوتلین از شروط منطقی که در ریاضیات وجود دارد پشتیبانی می‌کند:

  • کمتر از:a < b
  • کمتر یا مساوی با:a <= b
  • بزرگتر از:a > b
  • بزرگتر یا مساوی با:a >= b
  • برابر باa == b
  • مساوی نیست با:a != b

شما می‌توانید از این شروط برای تصمیم گیری های مختلف در سطح برنامه و درون جملات شرطی استفاده کنید، و متناسب با این تصمیم گیری ساختار برنامه را کنترل کنید و عملیات مورد نظر خود را انجام دهید.

شرط ها در کاتلین

از 4 کلمه کلیدی زیر برای مدیریت شرط ها در کاتلین استفاده می‌کند:

  • استفاده از if : اگر شرط موجود در پرانتز درست باشد، کدهای درون بلاک if اجرا می‌شوند.
  • استفاده از else : اگر همان شرط بالا درست نباشد، کدهای درون این بلاک اجرا خواهند شد.(شرط دورن پرانتز ندارد)
  • استفاده از else if : اگر شرط اول نادرست باشد،و بخواهیم یک شرط جدید را تست کنیم، اگر شرط موجود در پرانتز درست باشد کدهای درون این بلاک اجرا می‌شود.
  • استفاده از when : از این شرط زمانی استفاده میکنیم که تعداد زیادی شرط برای بررسی وجود داشته باشد.

نکته مهم: در کاتلین میتوانیم نتیجه یک شرط را مستقیم درون یک متغیر بریزیم، و این یکی از مزایای کاتلین نسبت به جاوا است. در ادامه مقاله این مورد را شرح می‌دهیم پس با ما همراه باشید.

شرط if در کاتلین

در جلوی دستور if یک پرانتز وجود دارد که شرط را داخل آن نوشته ایم، اگر این شرط برقرار باشد وارد بلاک if

شده و کدهای درون آن اجرا می‌شود:

if (condition) {
//if condition is true , this line run in app
}

توجه داشته باشید که if با حروف کوچک است. حروف بزرگ (If یا IF) خطا ایجاد می کنند.

در مثال زیر دو متغیر x و y را باهم مقایسه می‌کنیم تا به این پی ببریم که کدام بزرگتر از دیگری هستند:

val x = 25
val y = 21
if (x > y) {
println(&quotx بزرگتر است&quot) //چون شرط برقرا است، این خط کد اجرا می‌شود
}

عدم برقراری شرط یا else

دستور else زمانی استفاده می‌شود که همه‌ی شروط if و else if برقرار نباشد، ومعنای آن این میشود: “اگر هیچ کدام از شروط برقرار نبود” آنگاه کدهای درون این بلاک اجرا می‌شود:

val time = 7
if (time < 12) {
println(&quotروز خوبی داشته باشید&quot)
} else {
println(&quotبعد از ظهر خوبی داشته باشید&quot)
}

در مثال بالا ساعت روز را چک میکنیم، در شرط if گفتیم اگر ساعت از 12 کمتر بود، بگو روز خوبی داشته باشید، ودر else گفتیم که اگر شرط بالا برقرار نبود، این بلاک اجرا شود، با توجه به اینکه متغیر time ساعت 7 را نشان می‌دهد، و 7 از 12 کمتر است، پس شرط جمله if درست بوده و برنامه به داخل بلاک if می‌رود و کدهای درون آن را اجرا می‌کند. که نتیجه‌ی آن چاپ خروجی “روز خوبی داشته باشید” است.

چک کردن یک شرط جدید یا else if

اگر شرط موجود در if برقرار نباشد، برای تست کردن سایر شروط از جمله else if استفاده میکنیم به مثال زیر دقت کنید:

val time = 23
if (time < 10) {
println(&quotصبح بخیر&quot)
} else if (time < 20) {
println(&quotروز بخیر&quot)
} else {
println(&quotشب بخیر&quot)
}

خب در مثال بالا گفتیم اگر ساعت از 10 کمتر بود شرط if برقرار است و برو داخل بلاک if و مقدار صبح خیر را چاپ کن، در غیر اینصورت اگر (else if) ساعت از 20 کمتر بود برو داخل بلاک else if و مقدار روز بخیر را چاپ کن، و اگر هیچ کدام از شروز بالا برقرار نبود برو کدهای بلاک else را اجرا کن و بگو شب بخیر که چون ساعت فعلی که درون متغیر time قرار دارد 23 است، مقدار شب بخیر را چاپ می‌کند، اگر مثلا الان ساعت 8 بود، طبق برنامه بالا مقدار صبح بخیر چاپ می‌شد.

ریختن خروجی شرط دورن یک متغیر در کاتلین

این یکی از مزایای شرط ها در کاتلین است که می‌توانیم نتیجه حملات شرطی را بصورت مستقیم درون یک متغیر بریزیم، برای درک بهتر این موضوع، قطعه کد زیر را ببینید:

val time = 19
val greeting = if (time < 17) {
&quotGood day.&quot
} else {
&quotGood evening.&quot
}
println(greeting)

نکته مهم: اگر می‌خواهید از if مانند مثال بالا استفاده کنید، if شما حتما باید جمله elseهم داشته باشد.

و همانطور که می‌دانید، اگر کدهای درون بلاکif و elseیک خط کد باشند، می‌توانیم کروشه ها را حذف کنیم مانند مثال زیر :

fun main() {
val time = 20
val greeting = if (time < 17) &quotGood day.&quot else &quotGood evening.&quot
println(greeting)
}

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

دوست برنامه نویسی من، برای خوندن مقالات تخصصی اندروید، میتونی به سایت ترولرن هم مراجعه کنی



زبان برنامه نویسی کاتلین
علاقه اصلی من برنامه نویسی اندروید هستش اما نزدیک به یک ساله که وارد دنیای وب و بک اند شدم و عاشق nodejs و mern stack هستم
شاید از این پست‌ها خوشتان بیاید