Les différents types de variables

Difficulté Facile
Note
Thématiques
Mis à jour le lundi 7 janvier 2013

Nous allons commencer par découvrir comment créer des variables dans la mémoire. Pour cela, il faut les déclarer. Une déclaration de variable se fait comme ceci :

<Type de la variable> <Nom de la variable> ;

Cette opération se termine toujours par un point-virgule « ; » (comme toutes les instructions de ce langage). Ensuite, on l'initialise en entrant une valeur.

En Java, nous avons deux types de variables :

  1. des variables de type simple ou « primitif » ;

  2. des variables de type complexe ou des « objets ».

Ce qu'on appelle des types simples ou types primitifs, en Java, ce sont tout bonnement des nombres entiers, des nombres réels, des booléens ou encore des caractères, et vous allez voir qu'il y a plusieurs façons de déclarer certains de ces types.

Les variables de type numérique

Le type byte (1 octet) peut contenir les entiers entre -128 et +127.

byte temperature;
temperature = 64;

Le type short (2 octets) contient les entiers compris entre -32768 et +32767.

short vitesseMax;
vitesseMax = 32000;

Le type int (4 octets) va de -2*109 à 2*109 (2 et 9 zéros derrière… ce qui fait déjà un joli nombre).

int temperatureSoleil;
temperatureSoleil = 15600000; //La température est exprimée en kelvins

Le type long (8 octets) peut aller de -9*10^18 à 9*10^18 (encore plus gros…).

long anneeLumiere;
anneeLumiere = 9460700000000000L;

Le type float (4 octets) est utilisé pour les nombres avec une virgule flottante.

float pi;
pi = 3.141592653f;

Ou encore :

float nombre;
nombre = 2.0f;

Le type double (8 octets) est identique à float, si ce n'est qu'il contient plus de chiffres derrière la virgule et qu'il n'a pas de suffixe.

double division;
division = 0.333333333333333333333333333333333333333333334d;

Des variables stockant un caractère

Le type char contient un caractère stocké entre apostrophes (« ' ' »), comme ceci :

char caractere;
caractere = 'A';

Des variables de type booléen

Le type boolean, lui, ne peut contenir que deux valeurs  : true (vrai) ou false (faux), sans guillemets (ces valeurs sont natives dans le langage, il les comprend directement et sait les interpréter).

boolean question;
question = true;

Et aussi le type String

Le type String permet de gérer les chaînes de caractères, c'est-à-dire le stockage de texte.

Il s'agit d'une variable d'un type plus complexe que l'on appelle objet. Vous verrez que celle-ci s'utilise un peu différemment des variables précédentes :

//Première méthode de déclaration
String phrase;
phrase = "Titi et Grosminet";

//Deuxième méthode de déclaration
String str = new String();
str = "Une autre chaîne de caractères";

//Troisième méthode de déclaration
String string = "Une autre chaîne";

//Quatrième méthode de déclaration
String chaine = new String("Et une de plus !");

Cela a été mentionné plus haut : String n'est pas un type de variable, mais un objet. Notre variable est un objet, on parle aussi d'une instance : ici, une instance de la classe String. Nous y reviendrons lorsque nous aborderons les objets.

On te croit sur parole, mais pourquoi String commence par une majuscule et pas les autres ?

C'est simple : il s'agit d'une convention de nommage. En fait, c'est une façon d'appeler nos classes, nos variables, etc. Il faut que vous essayiez de la respecter au maximum. Cette convention, la voici :

  • tous vos noms de classes doivent commencer par une majuscule ;

  • tous vos noms de variables doivent commencer par une minuscule ;

  • si le nom d'une variable est composé de plusieurs mots, le premier commence par une minuscule, le ou les autres par une majuscule, et ce, sans séparation ;

  • tout ceci sans accentuation !

Je sais que la première classe que je vous ai demandé de créer ne respecte pas cette convention, mais je ne voulais pas vous en parler à ce moment-là… Donc, à présent, je vous demanderai de ne pas oublier ces règles !

Voici quelques exemples de noms de classes et de variables :

public class Toto{}
public class Nombre{}
public class TotoEtTiti{}
String chaine;
String chaineDeCaracteres;
int nombre;
int nombrePlusGrand;

Donc, pour en revenir au pourquoi du comment, je vous ai dit que les variables de type String sont des objets. Les objets sont définis par une ossature (un squelette) qui est en fait une classe. Ici, nous utilisons un objet String défini par une classe qui s'appelle « String » ; c'est pourquoi String a une majuscule et pas int, float, etc., qui eux ne sont pas définis par une classe.

Faites donc bien attention lors de vos déclarations de variables… Une petite astuce quand même (enfin deux, plutôt) : on peut très bien compacter les phases de déclaration et d'initialisation en une seule phase ! Comme ceci :

int entier = 32;
float pi = 3.1416f;
char carac = 'z';
String mot = new String("Coucou");

Et lorsque nous avons plusieurs variables d'un même type, nous pouvons résumer tout ceci à une déclaration :

int nbre1 = 2, nbre2 = 3, nbre3 = 0;

Ici, toutes les variables sont des entiers, et toutes sont initialisées.

Avant de nous lancer dans la programmation, nous allons faire un peu de mathématiques avec nos variables.

L'auteur