عملگر شرطی

عملگر شرطی (?:) در جاوا مانند دستور شرطی if…else عمل می‌کند. در زیر نحوه استفاده از این عملگر آمده است:

<condition> ? <result if true> : <result if false>

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

   1: package myfirstprogram;
   2:
   3: public class MyFirstProgram 
   4: {
   5:     public static void main(String[] args) 
   6:     {
   7:          int number = -10;
   8:          
   9:          int  ABS = (number > 0) ? (number) : -(number);
  10:          
  11:          System.out.println("ABS      = " + ABS);          
  12:     }   
  12: }
10

برنامه بالا نحوه استفاده از این عملگر شرطی را نشان می‌دهد. در این برنامه قصد ما به دست آوردن قدر مطلق یک عدد است. ابتدا در خط 7 یک متغیر از نوع int تعریف کرده و مقدار آن را 10- می‌گذاریم. در خط 9 یک متغیر از نوع صحیح تعریف کرده‌ایم تا نتیجه را در آن قرار دهیم. خط 9 به این صورت تعریف می‌شود: ” اگر مقدار number از 0 بزرگ‌تر باشد خود مقدار را در متغیر ABS قرار بده در غیر اینصورت آن را در منفی ضرب کرده و آن را در متغیر ABS قرار بده”. حال برنامه بالا را با استفاده از دستور if else می‌نویسیم:

int number = -10;

if(number > 10)
{
    System.out.println(number);
}
else
{
    System.out.println(-(number));
}  

هنگامی که چندین دستور در داخل یک بلوک if یا else دارید از عملگر شرطی استفاده نکنید چون خوانایی برنامه را پایین می‌آورد.