رفتن به مطلب

دستورات شرطی در کاتلین


ارسال‌های توصیه شده

سلام

هنگام کار با هر زبان برنامه نویسی همیشه همه دستورات ما نباید اجرا شوند و تحت یک شرایط خاص ممکنه نیاز باشد تا اجرا شوند از این رو ما از دستورات شرطی و شرط ها استفاده میکنیم

برای نوشتن یک شرط ساختار زیر استفاده میکنیم

if (condition) {
	...
}

در داخل پرانتز ما باید شرط خود را نوشته و در آکولاد ها دستورات خود را

شرط ما باید مقدار true داشته باشد تا دستورات داخل آن اجرا شود

برای نوشتن شرط میتوانیم از یکسری عملگرهای مقایسه ای استفاده کنیم این عملگرها به ما یک مقدار صحیح (true) یا یک مقدار غلط (false) بازگشت داده و ما از آن در شرط خود استفاده میکنیم

عملگر ها به شکل زیر میباشند

کوچکتر A < B

کوچکتر یا مساوی : A <= B

بزرگتر : A > B

بزرگتر یا مساوی : A >= B

مساوی : A == B

نامساوی : A != B

با قرار دادن عملگر ها در شرط عمل مقایسه اتفاق میوفتد

برای مثال

val A = 20
val B = 18

if (A == B) {
	...
}

در اینجا در حال مقایسه دو متغیر هستیم که آیا برابر هستن یا خیر که جواب ما خیر میباشد بنابراین دستورات ما اجرا نخواهد شد

حال شاید بخواهیم شرط دیگری در نظر بگیریم تا درصورتی که شرط اول برقرار نبودشرط دوم اتفاق بیوفتد

برای اینکار از else if میتوان استفاده کرد

val A = 15
val B = 18

if (A == B) {
	...
} else if (A > B) {
	...
}

حال در اینجا یک مقایسه دیگر انجام میدهیم که آیا A بزرگتر از B هست یا خیر اگر شرط درست باشد دستورات آن اجرا میشود اما اگر درست نباشد چه میشود؟

خب تا اینجا اگر اعداد ما برابر نبودند به شرط دوم میرویم در شرط دوم اگر A بزرگتر نبود باز هم هیچ اتفاقی نیوفتد پس راه حل چیست؟

ما میتونیم با نوشتن یک else if دیگر و یک شرط دیگر برای کوچک تر بودن A در نظر بگیریم

ولی به دلیل اینکه این تنها حالت باقی مانده ما میباشد و حالت دیگه وجود ندارد میتوانیم از else استفاده کنیم

else نیازی به شرط ندارد و کدهای مارا کوتاه تر میکند

val A = 15
val B = 18

if (A == B) {
	...
} else if (A > B) {
	...
} else {
	...
}

حال شاید بخواهیم مقایسه را پیچیده تر کنیم یا در یک شرط چندین مقایسه داشته باشیم برای این کار از عملگرهای منطقی استفاده میکنیم

عملگر && :

val A = 10
val B = 20
val C = 30

if (A == B && B == C) {
	...
}

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

عملگر || :

val A = 10
val B = 20
val C = 30

if (A == B ||  B == C) {
	...
}

بر خلاف عملگر قبلی که هر دو مقایسه باید صحیح میبودند در این عملگر هر گاه یکی از مقایسه ها صحیح باشند و دیگری ناصحیح باز هم دستورات آن شرط اجرا خواهند شد

عملگر ! را هم داریم که کار آن معکوس کردن جواب شرط میباشد برای مثال

val A = true

if (!A) {
	...
}

در این حالت دستورات ما اجرا نخواهد شد چون مقدار A به false بازگشت داده میشود

از دستورات شرطی برای مقدار دهی متغیر هم میتوان استفاده کرد

val A = 10
val B = if (A == 10) {
	20
} else {
	50
}

به این ترتیب اگر A برابر با 10 بود مقدار B برار با 20 خواهد شد در غیر اینصورت 50 را به آن اعمال میکنیم

توجه داشته باشید نوشتن else اجباری میباشد.

همچنی شرط بالا را میتوان خلاصه تر نوشت درصورتی که دستورات داخل {} یک خطی باشد

val A = 10
val B = if (A == 10)  20 else 50

این بود کلیت دستورات شرطی در برنامه نویسی کاتلین

موفق باشید.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...