Java/Operatori: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Riscrittura (quasi ultimata)
 
Nessun oggetto della modifica
Riga 39:
 
si usano per eseguire operazioni di somma, sottrazione, divisione e moltiplicazione:
'''lunghezzaDellaCirconferenza''' = 2 * PI_GRECO * '''raggioDellaCirconferenza;
'''
 
===Relazionali===
Questi operatori sonoSono detti 'relazionali' perché non hanno un numero per risultato, ma un [[w:valore di verità|valore di verità]]numero, stabilitoma inconfrontano basei a unadue [[w:relazioneoperandi|relazioneoperandi]] trae irestituiscono dueun [[w:operandivalore di verità|operandivalore di verità]]:
 
{| {{prettytable}}
|- bgcolor="#efefef"
Line 75 ⟶ 76:
'''if'''( a >= b ) '''faiQualcosa()''';
 
AttenzioneFai attenzione alla differenza tra == e .equals(), che verrà affrontata quando parlemo di oggetti (nel caso di tipi semplici '''non''' si puó utilizzare la seconda forma).
 
===Booleani===
Sono detti cosí in onore di chi li ha impiegati per primo: G. Boole.
Per chiarezza sono suddivisi in [[w:bitwise|''bitwise'']] (scusate l'[[wt:anglicismo|anglicismo]]) e logici.
 
====Bitwise====
Agiscono su i singoli [[w:bit|bit]] di cui sono composti gli operandi.
 
====Logici====
Agiscono su intere proposizioni e possono essere usati solo nei test condizionali ('''if, for, do, while''')
 
 
===Operatori <nowiki>#=</nowiki>===
Line 83 ⟶ 95:
c = c % d;
e = e + f;
sono molto frequenti nella scrittura di programmi, cosí è stata dunque elaboratainventata una forma abbreviata, il cui significato è del tutto identico a quelle precedenti,
 
a+=1;
Line 91 ⟶ 103:
il loro uso rende il codice piú intuitivo (io penso "Aggiungi a a b", non "Aggiungi a a b e metti il risultato in a") ma è un fatto personale, per il compilatore
a = a + d; e a+=d;
sono del tutto equivalenteequivalenti.
 
È sconsigliato -ma legittimo- l'uso di:
&= |=
È invece un errore scrivere:
'''controllaQuesto() &&= controllaQuello();'''
 
La facilità con cui si incontra l'operazione
a+=1;
è talmentetanto elevata che ne è stata concepita una forma ulteriormenteancora abbreviatapiù breve:
a++ o ++a
Sono equivalenti in genere, ma la prima [[w:incrementa|incrementa]] la variabile prima di utilizzarla, la seconda dopo.
Ció è di vitale importanza in istruzioni (a cui i programmatori C sono abituati, ma che è buona norma non usare in Java) come:
elementoNumeroA = elementi[a++];
''(l'elemento preso sarà il numero a o a+1 ?)''
ma indifferente in:
for(int i = 0; i=100; i++); for(int i = 0; i=100; ++i);
Le stesse considerazioni valgono per a-- e --a.
 
==Operatori unari==
Agiscono su '''una sola variabile''' e il loro significato è spesso oscuro, perché non hanno corrispondenti in aritmetica.
 
{| {{prettytable}}
Line 126 ⟶ 146:
|align="center"|'''--'''
|align="center"|a-- ''oppure'' --a
 
 
|-
|align="center"|'''(nome_di_tipo)'''