31.10.2014 Views

La syntaxe et les éléments de bases de java - Technologue pro

La syntaxe et les éléments de bases de java - Technologue pro

La syntaxe et les éléments de bases de java - Technologue pro

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Mlle Imene Sghaier<br />

ISETN<br />

• le signe = d'affectation d'une valeur à une variable<br />

L'usage <strong>de</strong>s parenthèses perm<strong>et</strong> <strong>de</strong> modifier c<strong>et</strong> ordre <strong>de</strong> priorité.<br />

5. Les opérations arithmétiques<br />

Les opérateurs arithmétiques se notent + (addition), - (soustraction), * (multiplication), / (division)<br />

<strong>et</strong> % (reste <strong>de</strong> la division). Ils peuvent se combiner à l'opérateur d'affectation.<br />

Exemple :<br />

nombre += 10;<br />

5.1. L'arithmétique entière<br />

Pour <strong>les</strong> types numériques entiers, Java m<strong>et</strong> en oeuvre une sorte <strong>de</strong> mécanisme <strong>de</strong> conversion<br />

implicite vers le type int appelée <strong>pro</strong>motion entière. Ce mécanisme fait partie <strong>de</strong>s règ<strong>les</strong> mise en<br />

place pour renforcer la sécurité du co<strong>de</strong>.<br />

Exemple :<br />

short x = 5 , y = 15;<br />

x = x + y ; //erreur à la compilation<br />

ncompatible type for =. Explicit cast nee<strong>de</strong>d to convert int to short.<br />

x = x + y ; //erreur à la compilation<br />

^<br />

1 error<br />

Les opéran<strong>de</strong>s <strong>et</strong> le résultat <strong>de</strong> l'opération sont convertis en type int. Le résultat est affecté dans<br />

un type short : il y a donc risque <strong>de</strong> perte d'informations <strong>et</strong> donc erreur à la compilation est émise.<br />

C<strong>et</strong>te <strong>pro</strong>motion évite un débor<strong>de</strong>ment <strong>de</strong> capacité sans que le <strong>pro</strong>grammeur soit pleinement<br />

conscient du risque : il est nécessaire, pour régler le <strong>pro</strong>blème, d'utiliser une conversion explicite<br />

ou cast.<br />

Exemple :<br />

x = (short) ( x + y );<br />

Il est nécessaire <strong>de</strong> m<strong>et</strong>tre l'opération entre parenthèse pour que ce soit son résultat qui soit<br />

converti car le cast a une priorité plus forte que <strong>les</strong> opérateurs arithmétiques. <strong>La</strong> division par zéro<br />

pour <strong>les</strong> types entiers lève l'exception Arithm<strong>et</strong>icException<br />

Exemple :<br />

/* test sur la division par zéro <strong>de</strong> nombres entiers */<br />

Support <strong>de</strong> langage Java 2006-2007

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!