image-fre-FR-00-14

Une femme aux cheveux roses entra dans la cabine. « Je me demande si toutes les femmes humaines ont des cheveux comme ça, » parvint à se demander Amigo.

« Salut ! Mon nom est Eleanor Carrey. Tu peux m'appeler Ellie. Je suis la navigatrice du Voyageur interstellaire. »

« Salut, Ellie, » se força à répondre Amigo.

« Je vais t'expliquer la partie la plus intéressante de tout le langage Java : les variables. »

« Je t'écoute. Que sont ces variables dont tu parles ? »

« Les variables sont des entités spéciales utilisées pour ranger des données. N'importe quelles données. En Java, toutes les données sont rangées dans des variables. L'analogie la plus proche est celle d'une boîte. »

« Une boîte ? Quel genre de boîte ? »

« N'importe quelle boîte. Supposons que tu écris le numéro 13 sur une feuille de papier et que tu le mets dans une boîte. Maintenant, nous pouvons dire que la boîte stocke la valeur 13. »

« En Java, chaque variable a trois propriétés importantes : un type, un nom et une valeur. »

« Tu peux préciser ? »

« Bien sûr. Nous utilisons un nom pour pouvoir distinguer une variable d'une autre. C'est comme une étiquette sur une boîte. »

« Le type d'une variable détermine les genres de valeurs/données qu'il est possible d'y ranger. Nous mettons un chapeau dans une boîte à chapeau, des chaussures dans une boîte à chaussures, etc. »

« La valeur désigne l'objet, les données ou les informations que nous stockons dans la variable. »

« Tu peux m'en dire plus sur les types ? »

« Bien sûr. Chaque objet en Java a un certain type. Par exemple, il peut s'agir d'un entier, d'un nombre fractionnaire, de texte, d'un chat, d'une maison, etc. »

« Une variable a aussi un type. Elle ne peut stocker que des valeurs dont le type est le même que le sien. »

« C'est comme dans la vie réelle. Différents types de boîtes servent à ranger des choses différentes : »

« Pour créer (ou déclarer) une variable, nous utilisons un nom du type : TypeName variableName. »

« Voici quelques exemples : »

Pour déclarer une variable :
d'abord le type, puis le nom.
Description
1
int a;
Crée une variable int nommée a.
2
String s;
Crée une variable String nommée s.
3
double c;
Crée une variable double nommée c.

« Les deux types les plus courants sont les entiers (déclarés en utilisant le mot int) et le texte (déclaré en utilisant le mot String). »

« Et le double, c'est quoi ? »

« Les variables de type double sont des nombres fractionnaires, ou réels. »

« Tu as dit qu'une variable avait trois propriétés : un type, un nom et une valeur. Mais je n'en vois que deux. Donc je voudrais te demander : comment tu affectes une valeur à une variable ? »

« Revenons à notre analogie de la boîte. Imagine que tu prends un morceau de papier, que tu écris le numéro 42, et que tu le mets dans la boîte. Maintenant, la boîte stocke la valeur 42. »

« Oui, je vois. »

« Nous utilisons une opération spéciale (affectation) pour affecter des valeurs aux variables. L'affectation copie la valeur d'une variable dans une autre. Elle ne déplace pas les valeurs. Elle les copie. Comme un fichier sur un disque. Ça se passe comme ça : »

Code Description
1
i = 3;
Affecte la valeur 3 à la variable i.
2
a = 1;
b = a+1;
Affecte la valeur 1 à la variable a.
Affecte la valeur 2 à la variable b.
3
x = 3;
x = x + 1;
Affecte la valeur 3 à la variable x.
Dans la ligne suivante, la valeur de x augmente de 1, ce qui rend x égal à 4

« Pour effectuer l'opération d'affectation, nous utilisons le signe égal (=). »

« Permets-moi d'insister : Ce signe ne fait pas une comparaison. Nous copions la valeur à droite du signe égal dans la variable de gauche. Pour effectuer une comparaison, Java utilise un double signe égal (==). »

« Je sais comment mettre un chat dans une variable. C'est presque comme un programme. »

« Comment piéger un chat :

1. Prendre une boîte vide.

2. Attendre. »

« Non, Amigo. Tu ne peux fourrer qu'un chat seul dans une boîte. Euh, je veux dire que tu ne peux attribuer qu'une seule valeur à une variable. »

« Je vois. Pourrais-tu me donner d'autres exemples de création de variables ? »

« D'accord. Permets-moi de le répéter : pour créer (ou déclarer) une variable, tu dois utiliser un nom au format "TypeName variableName". »

Code Explication
1
String s;
Une variable String nommée s est créée.
Cette variable peut stocker du texte.
2
int x;
Une variable int nommée x est créée.
Cette variable peut stocker un nombre entier.
3
int a, b, c;
int d;
Des variables int nommées a, b, c et d sont créées.
Ces variables peuvent stocker des nombres entiers.

« Oh, je comprends mieux maintenant ! »

« Garde à l'esprit que tu ne peux pas créer deux variables avec des noms identiques dans la même méthode. »

« Et dans des méthodes différentes ? »

« Oui, ça tu peux le faire. C'est comme avoir des boîtes dans des maisons différentes. »

« Et je peux appeler mes variables comme je veux ? »

« Presque. Les noms de variables ne peuvent pas contenir d'espaces, de lettres accentuées, de signes + ou -, etc. Il vaut mieux utiliser seulement des lettres non accentuées et des chiffres dans le nom d'une variable. »

« Retiens aussi que Java est sensible à la casse. int a n'est pas la même chose que Int a. »

« Au passage, en Java, tu peux créer une variable et lui affecter une valeur en même temps. Ça nous permet de gagner du temps et de la place. »

Code compact Code équivalent, mais plus long
1
int a = 5;
int b = 6;
int a;
a = 5;
int b;
b = 6;
2
int c = 7;
int d = c+1;
int c;
c = 7;
int d;
d = c+1;
3
String s = "I'm Amigo";
String s;
s = "I'm Amigo";

« Cette façon d'écrire est beaucoup plus compacte et claire. »

« C'est comme ça qu'on fonctionne. »

« Il y a deux types avec lesquels tout novice en Java doit se familiariser : int (nombres entiers) et String (texte/chaîne de caractères). »

« Le type int te permet de stocker des nombres dans les variables et d'effectuer des opérations dessus : addition, soustraction, multiplication, division, etc. »

Code Explication
1
int x = 1;
int y = x*2;
int z = 5*y*y + 2*y + 3;
x égale 1
y égale 2
z égale 20+4+3, c'est-à-dire 27
2
int a = 5;
int b = 1;
int c = (a-b) * (a+b);
a égale 5
b égale 1
c égale 4*6, c'est-à-dire 24
3
int a = 64;
int b = a/8;
int c = b/4;
int d = c*3;
a égale 64
b égale 8
c égale
d égale 6

« J'ai compris. Et la programmation est toujours aussi facile ? »

« À vrai dire, oui. »

« Super ! Alors, ensuite ? »

« Le type String te permet de stocker des lignes de texte, également appelées "chaînes".

« Pour affecter une chaîne en Java, tu dois placer le texte entre guillemets. Voici quelques exemples : »

Code Explication
1
String s = "Amigo";
s contient "Amigo".
2
String s = "123";
s contient "123".
3
String s = "123 + 456";
s contient "123 + 456".

« J'ai compris. Ça n'a pas l'air trop compliqué. »

« Je vais te parler d'un autre truc assez drôle. »

« Tu peux joindre des chaînes de caractères avec un signe plus (+). Regarde ces exemples. »

Code Explication
1
String s = "Amigo" + " is the best";
s contient "Amigo is the best".
2
String s = "";
s contient une chaîne vide : une chaîne sans le moindre symbole.
3
int x = 333;
String s = "Amigo" + x;
s contient "Amigo333".

« Donc tu peux ajouter des nombres à des chaînes de caractères ? »

« Oui, mais rappelle-toi que lorsque tu additionnes des chaînes et des nombres, le résultat est toujours une chaîne de caractères. »

« C'est bien ce que j'avais compris avec ton exemple. »

« Puisque tu es si intelligent, essaie de trouver comment afficher une variable à l'écran. »

« Hmmm. Une variable ? À l'écran ? Je ne vois pas. »

« C'est simple, en fait. Pour afficher quelque chose sur l'écran, nous utilisons une commande System.out.println(), et nous passons tout ce que nous voulons afficher dans les arguments. »

Code Sortie écran
1
System.out.println("Amigo");
Amigo
2
System.out.println("Ami"+"go");
Amigo
3
String s = "Amigo";
System.out.println(s);
Amigo
4
String s = "Am";
System.out.println(s+"igo");
Amigo

« A-ha ! Ça me paraît maintenant beaucoup plus clair. »

« Parfait. Voici trois autres exercices pour toi. »

2
Mission
Syntaxe Java,  niveau 0leçon 4
Bloqué
Des mots gentils pour le prof
Tous les professeurs du centre secret CodeGym sont du plus haut niveau. Les élèves le remarquent dès le départ (niveau 0), mais le disent rarement à haute voix. Mais même les chatons aiment les mots doux, tu sais ? Le meilleur compliment qu'une personne qui enseigne la programmation puisse recevoir est... un programme. Et si en plus il imprime la bonne expression, sa valeur devient inestimable ! Écrivons un programme avec un compliment.
2
Mission
Syntaxe Java,  niveau 0leçon 4
Bloqué
Mon jeune ami
En 3126, tout le monde connaît System.out.println() et l'utilise souvent. Pas seulement les élèves de CodeGym qui commencent à apprendre la programmation avec cette commande. Même les enfants l'utilisent. Écrivons un programme qui affiche la véritable année de naissance de mon ami. Il est né il y a 8 ans.
1
Mission
Syntaxe Java,  niveau 0leçon 4
Bloqué
Déclarer des variables
En Java, tu ne peux pas commencer à utiliser une variable comme ça, sans prévenir ! Personne ne te comprendrait. En tout cas les compilateurs ne comprendraient rien et se fâcheraient tout rouge, je te préviens ! Donc, si tu décides de faire un truc avec une variable, tu dois annoncer tes intentions publiquement ! Écrivons un programme qui déclare des variables avec les types int et String.