Vous êtes ici :
Accueil Cours Programmations La Programmation Orientée Objet en Java Les Opérateurs de base en Java

La Programmation Orientée Objet en Java : Les Opérateurs de base en Java

Java fournit un ensemble complet d'opérateurs pour manipuler des variables. Nous pouvons diviser tous les opérateurs Java en groupes suivants:

  • Opérateurs arithmétiques
  • Opérateurs relationnels
  • Opérateurs de Bit
  • Opérateurs logiques
  • Opérateurs d’affectation
  • Opérateurs divers

Les opérateurs arithmétiques

Les opérateurs arithmétiques sont utilisés dans des expressions mathématiques de la même manière qu'ils sont utilisés dans l'algèbre. Le tableau suivant répertorie les opérateurs arithmétiques:

Supposons que la variable entière A détient 10 et la variable B détient 20, puis:

Opérateur

La description

Exemple

+

Addition : Ajoute des valeurs de part et d'autre de l'opérateur

A+B donnera 30

-

Soustraction : Soustrait l'opérande à droite de l'opérande de gauche

A-B donnera     -10

*

Multiplication : Multiplie les valeurs de chaque côté de l'opérateur

A*B donnera 200

/

Division : Divise l'opérande gauche par l'opérande de droite

B/A donnera 2

%

Modulo : Divise l'opérande gauche par l'opérande de droite et retourne le reste

B%A donnera 0

++

Incrémentation : augmente la valeur de l'opérande de 1

B++ donne 21

--

decrémentation : Diminue la valeur de l'opérande de 1

B-- donne 19

 

 

 

 

 

 

 

 

 

Les opérateurs relationnels

Il existe des opérateurs relationnels suivants supportés par le langage Java

Supposons que la variable A détient 10 et la variable B détient 20, puis:

Opérateur

La description

Exemple

==

Vérifie si les valeurs de deux opérandes sont égales ou non, si oui, la condition devient vraie.

(A == B) n'est pas vrai.

!=

Vérifie si les valeurs de deux opérandes sont égales ou non, si les valeurs ne sont pas égales, la condition devient vraie.

(A!= B) est vrai.

Vérifie si la valeur de l'opérande gauche est supérieure à la valeur de l'opérande droit, si oui, la condition devient vraie.

(A> B) n'est pas vrai.

Vérifie si la valeur de l'opérande gauche est inférieure à la valeur de l'opérande droit, si oui, la condition devient vraie.

(A <B) est vrai.

> =

Vérifie si la valeur de l'opérande gauche est supérieure ou égale à la valeur de l'opérande droit, si oui, la condition devient vraie.

(A>= B) n'est pas vrai.

<=

Vérifie si la valeur de l'opérande gauche est inférieure ou égale à la valeur de l'opérande droit, si oui, la condition devient vraie.

(A <= B) est vrai.

 

Les opérateurs de Bit

Java définit plusieurs opérateurs bit à bit, qui peuvent être appliqués aux types entiers, long, int, short, char et byte.

L'opérateur de Bit fonctionne sur les bits et effectue une opération bit par bit. Supposons si a = 60; Et b = 13; Maintenant en format binaire, ils seront les suivants:

A = 0011 1100

B = 0000 1101

 

A & b = 0000 1100

A | b = 0011 1101

A ^ b = 0011 0001

~A = 1100 0011

Le tableau suivant répertorie les opérateurs bit à bit:

Supposons que la variable entière A détient 60 et la variable B détient 13 alors:

Opérateur

La description

Exemple

&

L'opérateur ET opérateur binaires copie un peu le résultat s'il existe dans les deux opérandes.

(A & B) donnera 12 qui est 0000 1100

|

L'opérateur OU opérateur binaire copie un peu s'il existe dans l'un ou l'autre opérande.

(A | B) donnera 61 qui est 0011 1101

^

L'opérateur XOR binaire copie le bit s'il est défini dans un opérande mais pas les deux.

(A ^ B) donnera 49 qui est 0011 0001

~

Complement de 2 : L'opérateur est unaire et a pour effet de "flipping" bits.

(~A) donnera    -61 qui est 1100 0011 en complément de 2 en raison d'un nombre binaire signé.

<< 

Opérateur de décalage à gauche. La valeur de l'opérateur gauche est déplacée à gauche par le nombre de bits spécifié par l'opérande droit.

A << 2 donnera 240 qui est 1111 0000

>> 

Opérateur de décalage à droite. La valeur de l'opérateur gauche est déplacée directement par le nombre de bits spécifié par l'opérande droit.

A >> 2 donnera 15 qui est 1111

>>> 

Opérateur de remplissage par zéro à  droit. La valeur des opérandes de gauche est déplacée directement par le nombre de bits spécifié par l'opérande droit et les valeurs décalées sont remplies avec des zéros.

A >>> 2 donnera 15 qui est 0000 1111

 

Les opérateurs logiques

Le tableau suivant répertorie les opérateurs logiques:

Supposons que les variables booléennes A sont valides et la variable B est fausse, puis:

 

Opérateur

La description

Exemple

&&

Appelé opérateur ET logique. Si les deux opérandes ne sont pas faux, alors la condition devient vraie.

(A && B) est faux.

||

Appelé opérateur logique OU. Si l'un des deux opérandes n'est pas nul, la condition devient vraie.

(A || B) est vrai.

!

Appelé opérateur logique NON. Utilisé pour inverser l'état logique de son opérande. Si une condition est vraie, l'opérateur logique devient faux et inversement.

!(A && B) est vrai.

 

Les opérateurs d’affectation

Les opérateurs d'affectation suivants sont pris en charge par le langage Java:

Opérateur

La description

Exemple

=

Opérateur d'affectation simple, Attribue des valeurs des opérandes du côté droit à l'opérande du côté gauche

C = A + B attribuera la valeur de A + B dans C

+=

Opérateur d’ajouter ET d'affectation, il ajoute l'opérande droit à l'opérande gauche et attribue le résultat à l'opérande gauche

C += A est équivalent à C = C + A

-=

Opérateur de Soustraction ET opérateur d'affectation, Il soustrait l'opérande droit de l'opérande gauche et affecte le résultat à l'opérande gauche

C -= A est équivalent à C = C - A

*=

Opérateur  de Multiplication ET opérateur d'affectation, Il multiplie l'opérande droit avec l'opérande gauche et attribue le résultat à l'opérande gauche

C *= A est équivalent à C = C * A

/=

Opérateur de division ET d'affectation, Il divise l'opérande gauche avec l'opérande droit et attribue le résultat à l'opérande gauche

C /= A est équivalent à C = C/A

%=

Opérateur Modulo ET opérateur d'affectation, il prend le modulo en utilisant les deux opérandes et affecte le résultat à l'opérande gauche

C %= A est équivalent à C = C%A

<<=

Opérateur d'affectation de décalage à gauche

C <<= 2 est identique à C = C << 2

>>=

Opérateur d'affectation et de décalage à droite

C >> = 2 est identique à C = C >> 2

&=

Opérateur d'affectation ET de bit à bit

C & = 2 est identique à C = C & 2

^=

OU exclusif de bit à bit et opérateur d'affectation

C ^= 2 est identique à C = C ^ 2

|=

opérateur de bit inclusif et d’affectation

C |= 2 est identique à C = C|2

 

Opérateurs divers

Il existe peu d'autres opérateurs supportés par le langage Java.

Opérateur conditionnel (?:) :

L'opérateur conditionnel est également connu comme l'opérateur ternaire. Cet opérateur se compose de trois opérandes et est utilisé pour évaluer les expressions booléennes. Le but de l'opérateur est de décider quelle valeur doit être attribuée à la variable. L'opérateur est écrit comme suit:

Variable x = (expression) ? Valeur si vraie : valeur si fausse

 Voici l’exemple:

public class Test {
   public static void main(String args[]){
      int a, b;
      a = 10;
      b = (a == 1) ? 20: 30;
      System.out.println("Value of b is : " +  b );
      b = (a == 10) ? 20: 30;
      System.out.println("Value of b is : " + b );
   }
}

Cela produirait le résultat suivant:

Value of b is : 30

Value of b is : 20

Opérateur instanceof 

Cet opérateur n'est utilisé que pour les variables de référence d'objet. L'opérateur vérifie si l'objet est d'un type particulier (type de classe ou type d'interface). L'instance d'un opérateur est considérée comme suit :

(Variable de référence d’objet) instanceof   (Type classe / interface)

Si l'objet désigné par la variable sur le côté gauche de l'opérateur passe la vérification IS-A pour le type de classe / interface sur le côté droit, le résultat sera vrai. Voici l'exemple:

public class Test {
   public static void main(String args[]){
      String name = "James";
      // following will return true since name is type of String
      boolean result = name instanceof String;
      System.out.println( result );
   }
}

Cela produirait le résultat suivant:

true

Cet opérateur renverra toujours true si l'objet comparé est l'assignation compatible avec le type à droite. Voici un exemple de plus:

class Vehicle {}
public class Car extends Vehicle {
   public static void main(String args[]){
      Vehicle a = new Car();
      boolean result =  a instanceof Car;
      System.out.println( result );
   }
}

Cela produirait le résultat suivant:

true

Précédence des opérateurs Java

La priorité de l'opérateur détermine le regroupement des termes dans une expression. Cela affecte la façon dont une expression est évaluée. Certains opérateurs ont plus de priorité que d'autres; Par exemple, l'opérateur de multiplication a plus de priorité que l'opérateur d'addition:

Par exemple, x = 7 + 3 * 2; Ici x est affecté de 13, pas 20 car l'opérateur * a plus de priorité que +, donc il est d'abord multiplié par 3 * 2 puis ajoute en 7.

Ici, les opérateurs avec la priorité la plus élevée apparaissent en haut du tableau, ceux avec le plus bas apparaissent en bas. Dans une expression, les opérateurs de priorité supérieure seront évalués en premier.

Catégorie

Opérateur

Associativité

Postfix

() []. (Opérateur point)

De gauche à droite

Unaire

++ -- !  ~

De droite à gauche

Multiplicative

* / %

De gauche à droite

Additif

+ -

De gauche à droite

Décalage

>> >>> <<

De gauche à droite

Relationnel

>> = <<=

De gauche à droite

Égalité

== !=

De gauche à droite

Bit ET

&

De gauche à droite

Bit XOR

^

De gauche à droite

Bit OU

|

De gauche à droite

Logique ET

&&

De gauche à droite

OR logique

||

De gauche à droite

Conditionnel ternaire

?:

De droite à gauche

Affectation

=  += -=  *=  /= %=  >>=  <<=  &=  ^=  |=

De droite à gauche

Virgule

,

De gauche à droite

 

 




Vous êtes ici :
Accueil Cours Programmations La Programmation Orientée Objet en Java Les Opérateurs de base en Java