Operatori e condizioni

« Older   Newer »
  Share  
view post Posted on 7/5/2010, 21:47

Group:
,,,..--::|| AMMINISTRATORE ||::--..,,,
Posts:
1,602
Location:
Scheda di rete

Status:


Naturalmente per poter effettuare delle condizioni, tra le variabili dobbiamo inserire dei caratteri corrispondenti a degli operatori: esistono Operatori matematici e Operatori di espressione, ne elenchiamo i più usati:

Operatori matematici:

+ addizione (o anche concatenazione di stringe)
- sottrazione
/ divisione
* moltiplicazione
++ incremento
-- decremento

Nota:
per elevare un numero a potenza si utilizza il metodo pow(double a, double b) della classe java.lang.math.
Ad esempio, per elevare il numero 3 al quadrato utilizzeremo:

double potenza = java.lang.math.pow(3,2);

Operatori di espressione:

= assegnazione
== ugualianza
!= differenza
> maggiore
< minore
&& e (AND logico)
|| o (OR logico)

E' possibile concatenare tra loro diversi Operatori per avere significati differenti:

>= maggiore e uguale
<= minore e uguale
+= assegna e aggiunge un valore
-= assegna e sottrae un valore

Facciamo qualche esempio:

int x = 1; // utilizziamo l'operatore = di assegnazione
int y = x + 1; // y sarà uguale a 2
y += 10; // y diventa 12

if (x == y)
{
System.out.println("Primo risultato FALSO");
}
else if (y > x)
{
System.out.println("Secondo risultato VERO");
}

Abbiamo visto come è possibile utilizzare gli operatori, analizziamo ora nel dettaglio cosa sono e come possiamo scrivere le condizioni in Java: leggendo l'esempio qui sopra riportato vi troviamo una riga con la condizione if, seguita (tra parentesi) dalla condizione che x deve essere uguale a y. Avrei potuto anche omettere le parentesi graffe, infatti se l'istruzione che segue è una sola non c'è bisogno di racchiudere in blocco, ma è importante che almeno agli inizi vi abituate ad utilizzarle le parentesi graffe. Seguendo troviamo la condizione else if, che indica una alternativa determinando una ulteriore condizione (se y è maggiore di x), anch'essa deve essere seguita da un blocco di graffe, nel caso in cui le istruzioni da eseguire siano maggiori di una.

Ci sono anche altri modi più abbreviati di scrivere una condizione, ritornando alla nostra secoda classe Temp.java, descritta nel secondo capitolo, analizziamo quest'altra condizione:

System.out.print(i == 0 ? args[i] : " " + args[i]);

/*
la sintassi è la seguente:
condizione ? istruzione se vera : istruzione se falsa
*/

Se la variabile i è uguale a 0 scrive il contenuto dell'Array args[i], altrimenti scrive prima uno spazio vuoto seguito dal valore stesso.

Al posto di dover scrivere tantissimi else if è possibile utilizzare il blocco switch:

class ProvaSwitch
{
public static void main(String args[])
{
int k = 10;
switch(k)
{
case 5: System.out.println(" case k = 5");
break;
case 10: System.out.println(" case k = 10");
break;
case 15: System.out.println(" case k = 15");
break;
default: System.out.println(" case default");
}
}
}

In questo caso scriverà in schermo "case k = 10", perchè nel blocco switch troviamo 4 casi, determinati dalla parola chiave case e seguiti dal valore del caso e dai due punti. Importante dopo tutte le istruzioni prima dell'ultima è l'istruzione break; che indica al compilatore di non tenere presente cosa c'è scritto sotto e permette di andare avanti. L'ultimo caso non ha bisogno della parola chiave case perchè è la scelta predefinita, nel caso in cui k non sia ne uguale a 5, ne a 10 e nemmeno a 15.
 
Web     Top
0 replies since 7/5/2010, 21:47   130 views
  Share