Programmation Java/Opérateurs
Un livre de Wikibooks.
| Programmation |
| Java |
| Sommaire |
| IHM avec SWING |
| Annexes |
| Modifier ce modèle |
[modifier] Les opérateurs
Voici une liste des opérateurs utilisables en Java, avec leur signification et leur associativité, dans l'ordre de leur évaluation (du premier au dernier évalué) et le type de données auquel chaque opérateur s'applique :
| Opérateur | Description | Type | Associativité |
|---|---|---|---|
() |
Appel de méthode | classes et objets | de gauche à droite |
[] |
Elément d'un tableau | tableaux | |
. |
Membre d'une classe ou d'un objet | classes et objets | |
++ |
Incrémentation post ou pré-fixée | byte char short int long float double |
de droite à gauche |
-- |
Décrémentation post ou pré-fixée | byte char short int long float double |
|
+ |
Positif | byte char short int long float double |
|
- |
Négation | byte short int long float double |
|
! |
Non logique | boolean |
|
~ |
Non binaire | byte char short int long |
|
(type) |
Conversion de type | tous | |
* |
Multiplication | byte char short int long float double |
de gauche à droite |
/ |
Division | byte char short int long float double |
|
% |
Modulo (reste de la division entière) | byte char short int long |
|
+ |
Addition | byte char short int long float double |
de gauche à droite |
- |
Soustraction | byte char short int long float double |
|
<< |
Décalage de bit vers la gauche | byte char short int long |
de gauche à droite |
>> |
Décalage de bit vers la droite (signe conservé) |
byte char short int long |
|
>>> |
Décalage de bit vers la droite (signe décalé) |
byte char short int long |
|
< |
Inférieur | byte char short int long float double |
de gauche à droite |
<= |
Inférieur ou égal | byte char short int long float double |
|
> |
Supérieur | byte char short int long float double |
|
>= |
Supérieur ou égal | byte char short int long float double |
|
== |
Egal | byte char short int long float double objet |
de gauche à droite |
!= |
Différent | byte char short int long float double objet |
|
& |
ET binaire | byte char short int long |
de gauche à droite |
^ |
OU exclusif binaire | byte char short int long |
de gauche à droite |
| |
OU binaire | byte char short int long |
de gauche à droite |
&& |
ET logique | boolean |
de gauche à droite |
|| |
OU logique | boolean |
de gauche à droite |
?: |
Opérateur ternaire de condition | boolean ? tous : tous |
de droite à gauche |
= |
Affectation | tous | de droite à gauche |
+= |
Addition et affectation | byte char short int long float double |
|
-= |
Soustraction et affectation | byte char short int long float double |
|
*= |
Multiplication et affectation | byte char short int long float double |
|
/= |
Division et affectation | byte char short int long float double |
|
%= |
Modulo et affectation | byte char short int long float double |
|
<<= |
Décaler à gauche et affectation | byte char short int long |
|
>>= |
Décaler à droite (excepté signe) et affectation | byte char short int long |
|
>>>= |
Décaler à droite (signe aussi) et affectation | byte char short int long |
|
&= |
ET binaire et affectation | byte char short int long |
|
^= |
OU exclusif binaire et affectation | byte char short int long |
|
|= |
OU binaire et affectation | byte char short int long |
|
, |
Enchaînement d'expressions | tous | de gauche à droite |
Chaque case de la colonne « associativité » regroupe les opérateurs de même priorité.
Remarque : Java effectue une conversion en int de manière implicite sur les shorts et les bytes dès qu'il doit effectuer une opération binaire, ce qui peut donner des résultats non conforme à ce que l'on pourrait attendre (détails).