Capsule : Notions de programmation - Expression (en construction)

Introduction

Dans un langage de programmation, une expression est une construction syntaxique qui peut être évaluée, c’est-à-dire dont la valeur peut être calculée. En Java, c’est construction peut être un terme unique comme un littéral, une constante symbolique, une variable ou l’application d’une fonction ou une combinaison de plusieurs termes à l’aide d’opérateurs. L’ordre d’évaluation des opérations arithmétique et logique est définie par les règles du langage et peuvent forcé par l’utilisation de parenthèse.

Literal Constante Variable Function application Arithmetic and logic expression ( Expression )
Fig 1. Expression

Littéral (valeur littérale)

Un littéral, ou valeur littérale, est une expression dont la valeur est celle qui est représenté sous forme de texte (de manière littérale) dans le code source du programme. Les types de valeurs qui peuvent être représentés sous cette forme diffèrent d’un langage à l’autre. En Java, il s’agit des nombres entiers, des nombres à virgule flottante, des valeurs booléennes, des caractères et des chaîne de caractères.

IntegerLiteral FloatingPointLiteral BooleanLiteral StringLiteral
Fig 2. Litéraux en Java

Nombres entiers

En Java un nombre entier peut être représenté sous une forme littérale en base 10 (figure 3), en base 16 (figure 4) et en base 2 (figure 5). Le caractère «tiret bas» peut être utilisé pour séparer les groupes de chiffres des grands nombres (base auxiliaire).

[0-9] _ L
Fig 3. Littéraux de nombres entiers en base 10 (système décimal)
0x 0X [0-9] [a-f] [A-F] _ L
Fig 4. Littéraux de nombres entiers en base 16 (système hexadécimal)
0b 0B [0-1] _ L
Fig 5. Littéraux de nombres entiers en base 2 (système binaire)

Dans tous les cas, si le nombre se termine par le suffixe L, le type de valeur est long. Si le suffixe est absent,la valeur est de type int.

Nombres à virgule flottante

Un nombre à virgule flottante (IEEE 754) peut être représenté à l’aide de la syntaxe décrite par la figure 6. Par défaut,le type d’un littéral de nombre à virgule flottante est double (double précision). Le suffixe F permet d’indiquer qu’il s’agit d’un float(simple précision).

[0-9] . [0-9] e E + - [0-9] F
Fig 6. Littéraux de nombres à virgule flottante

Autre valeurs littérales

Les autres types de valeurs qui peuvent être représentés à par des littéraux sont :

  • Le type char : Un seul caractère Unicode écrit entre apostrophe (‘).
  • Le type boolean : L’une des deux valeurs booléenne true ou false.
  • La classe String : Une séquence de caractères Unicode à l’exeption du guillemet (“) et du backslash () écrite entre guillemet.

Pour les chaîne de caractère, le backslash est le caractère d’échappement qui permet de représenter des caractères tels que, par exemple, un retour à la ligne (\n) ou un caratère de tabulation (\t).

Application d’une fonction

Dans l’idéal, une fonction est une sous-programme qui n’a pas d’effet de bord et dont la valeur de retour ne dépend que de la valeur des paramètres.

FunctionName ( Expression , )

Opérations arithmétiques et logiques

UnariOperator Expression BinaryOperator Expression

Opérateurs arithmétiques

Opérateurs logiques

Opérateurs de comparaison

Expression avec effet de bord

Création d’un tableau

new Type [ IntExpression ] [] []

Création d’un objet

new ClassName ( Expression , )