مسیر
/
Java
Java
/
برنامه‌ی درسی
/
عملگرهای سه‌تایی
عم

عملگرهای سه‌تایی در Java

1 تمرین

درباره‌ی عملگرهای سه‌تایی

«عملگر سه‌تایی» را می‌توان نسخه‌ی فشرده‌ی if-else در نظر گرفت. این عملگر معمولاً در دستورهای return به کار می‌رود (البته محدود به آن‌ها نیست) و فقط به یک خط نیاز دارد تا تصمیم بگیرد: اگر عبارت true باشد مقدار سمت چپ و اگر false باشد مقدار سمت راست را برمی‌گرداند.

بسیاری از عبارت‌های ساده‌ی if/else را می‌توان با عملگر سه‌تایی ساده‌تر کرد.

// this ternary statement
return 5 > 4 ? true : false;

// is equivalent to this if/else
if ( 5 > 4 ) {
    return true;
} else {
    return false;
}

حالا چطور بین if-else و عملگر سه‌تایی تصمیم بگیریم؟ خب، عملگرهای سه‌تایی در موقعیت‌های ساده به کار می‌روند، جایی که فقط باید بر اساس یک شرط مقداری را برگردانید و محاسبه‌ی اضافه‌ای لازم نیست. در بقیه‌ی موارد، مثل شرط‌های تودرتو، عبارت‌های بزرگ و زمانی که برای تعیین مقدار بازگشتی به بیش از یک خط نیاز دارید، از if-else استفاده کنید.

هرچند می‌توانید عملگرهای سه‌تایی را تودرتو کنید، اما کد اغلب ناخوانا می‌شود. در چنین مواردی، ifهای تودرتو ترجیح داده می‌شوند.

// hard to read
int value = expr1 ? expr2 && expr3 ? val1 : (val2 + val3) : expr4;

// easier to read
if (expr1){

    if (expr2 && expr3){

        return val1;
    }

    return val2 + val3;
}
return val4;


عملگرهای سه‌تایی و دستورهای if/else مثال خوبی برای این هستند که در برنامه‌نویسی راه‌های مختلفی برای رسیدن به یک نتیجه‌ی یکسان وجود دارد.

برای مثال‌های بیشتر، به این و این نگاه کنید.

ویرایش از طریق GitHub این پیوند در پنجره یا زبانه‌ی جدیدی باز می‌شود

عملگرهای سه‌تایی را یاد بگیرید