Metodi semplici

I sottoprogrammi, a volte, sono così semplici che…

Operatore condizionale ternario

Consideriamo il metodo seguente per il calcolo del massimo tra due interi

int max2(int a, int b)
{
   if(a >= b)
      return a;
   else
      return b;
}

è troppo corto per dedicargli un sottoprogramma e è troppo lungo per ricopiare il codice ogni volta che serve…

if(a >= b)
   r=a;
else
   r=b;

A questo scopo esiste l’operatore condizionale ternario che ha la sintassi

... risp = op1 ? op2 : op3;

e permette di riscrivere il codice precedente nella forma

int risp = (a >= b) ? a : b;

Per questi casi banali, ma molto frequenti, esistono i metodi predefiniti

Math.abs()
Math.min()
Math.max()
...

Metodi con risultato logico

Consideriamo il metodo seguente che decide se un numero è pari

boolean pari(int a)
{
   if(a%2 == 0)
      return true;
   else
      return false;
}

Può essere riscritto più semplicemente

boolean pari(int a)
{
   return (a%2 == 0);
}

oppure, direttamente…

boolean pari=(a%2 == 0);