Les types de base en Java et leur opérateurs

Patrick Gros et Pierrick Gaudry


Le type boolean

Il ne comprend que les deux valeurs true et false.

Les opérateurs définis pour les booléeans sont :
| ou inclusif
|| autre façon de faire le ou inclusif
& et
&& autre manière de faire et
^ ou exculsif
! négation
= affectation
== comparaison
!= inégalité

On peut combiner une affectation et une opération :
a |= b       équivaut à a = a | b
Ceci marche avec ^=, &=, mais pas avec ||, && ou !

Si a est une expression booléenne et b et c deux expressions de mêmes types :
a ? b : c
est une expression de même type que b et c, qui vaut b si a vaut true et qui vaut c si a vaut false.

Le type char

Il sert à représenter les caractères. Une constante de type char se marque entre simples quotes. Par exemple :

char c = 'A' ;

Bien que les caractères accentués soient sensés être utilisables, mieux vaut les éviter dans la pratique.
Il n'y a pas d'autres opérations intéressantes, de prime abord, avec les caractères que les comparaisons == et !=

Les types entiers

Suivant la précision voulue, on peut se servir des types byte, short, int et long, qui soint codés respectivement sur 1, 2, 4 et 8 octets.
Tous ces types comportent des valeurs positives et négatives.
Par défaut, on utilisera le type int, sauf si des contraintes particulières existent.

Les opérations possibles sont :
l'incrémentation : ++
la décrémentation : --
les opérations arithmtiques : +, -, *, /, % (les deux dernières sont la division entière et le modulo)
les comparaisons : ==, !, =, <, <=, >, >=
les opérations binaires sur les représentations des nombres : ou inclusif |, ou exclusif ^, et &, inversion ~, décalage à droite >>, à gauche <<
les opérateurs peuvent se combiner avec l'affectation : +=, -=, *=, /=, %=, >>=, <<=, &=, |=, ^=.

Les types réels

Ils sont au nombre de 2 : float et double.
Par défaut, on utilisera double, sauf si la place mémoire est un souci majeur.
Les opérations fournies dans la classe Math travillent sur le type double.

Les opérateurs disponibles sont :
les comparaisons : ==, !=, <, <=, >, >=
les opérations arithmétiques : +, -, *, / (le dernier est la division réelle àne pas confondre avec la division entière qui est appliquée si les deux opérandes sont entoers !)
les affectations composées : +=, -= ,*=, /=

On trouvera de nombreuses fonctions dans la classe Math :
abs, acos, asin, atan, atan2, ceil et floor pour les arrondis, cos, exp, log, max, min, pow, random, sin, sqrt, tan...
Ces fonction doivent être appelées avec le préfixe Math., soit par exemple : Math.ramdom()