Variables, types et String
Ce que tu vas apprendre
- Déclarer une variable en précisant son type.
- Connaître les principaux types primitifs et la classe
String. - Convertir une valeur d'un type à un autre sans surprise.
Déclarer des variables
Une variable est une case nommée qui contient une valeur. En Java, tu écris le type avant le nom :
String nom = "Crêpes";
int minutes = 20;
double prix = 3.5;
boolean vegetarien = true;
Java est typé statiquement : le type d'une variable est fixé à sa déclaration et ne change plus. Écrire minutes = "vingt" est refusé par le compilateur.
Chaque ligne se termine par un point-virgule. Le signe = copie la valeur de droite dans la variable de gauche.
Les types primitifs
Un type primitif contient directement une valeur simple. Il s'écrit en minuscules.
| Type | Contenu | Exemple |
|---|---|---|
int | entier | 20 |
long | grand entier | 5_000_000_000L |
double | nombre à virgule | 3.5 |
boolean | vrai ou faux | true |
char | un seul caractère | 'A' |
Le séparateur décimal est le point, pas la virgule. Un char s'écrit entre apostrophes, un texte entre guillemets doubles.
Il existe aussi byte, short et float. Tu les croiseras rarement au début : int et double suffisent pour la plupart des cas.
String : le texte
String n'est pas un type primitif mais une classe. Elle s'écrit avec une majuscule :
String nom = "Tarte aux pommes";
System.out.println(nom.length()); // 16
System.out.println(nom.toUpperCase()); // TARTE AUX POMMES
System.out.println(nom.contains("pommes")); // true
Une méthode est une action attachée à une valeur, appelée avec un point : nom.length(). Ici, length() renvoie le nombre de caractères.
Une String est immuable : toUpperCase() ne modifie pas nom, elle renvoie un nouveau texte. Pour garder le résultat, stocke-le dans une variable.
Assembler du texte
Le signe + colle deux textes. Pour insérer des valeurs dans une phrase, formatted est plus lisible :
String phrase = "Prépare " + nom + " en " + minutes + " minutes";
String autre = "Prépare %s en %d minutes".formatted(nom, minutes);
Dans le modèle, %s accueille un texte et %d un entier. Les valeurs sont données dans l'ordre.
Pour un texte sur plusieurs lignes, un bloc de texte s'ouvre et se ferme par trois guillemets :
String etapes = """
1. Mélanger
2. Cuire
""";
Comparer des textes : equals
Pour comparer des types primitifs, on utilise ==. Pour comparer des String, on utilise equals :
String a = "crêpes";
String b = "crêpes";
System.out.println(a.equals(b)); // true
System.out.println(a.equalsIgnoreCase("CRÊPES")); // true
String, == vérifie si ce sont la même instance en mémoire, pas si le texte est identique. Utilise toujours equals pour comparer du texte.var et final
Quand le type saute aux yeux, var laisse le compilateur le déduire :
var portions = 4; // int
var titre = "Ratatouille"; // String
Le type reste fixe : var évite seulement de l'écrire. Il ne fonctionne que dans une méthode, avec une valeur initiale.
Pour une valeur qui ne doit jamais changer, ajoute final :
final double TVA = 0.055;
Toute tentative de réaffecter TVA fait échouer la compilation. Par convention, une constante s'écrit en majuscules.
Calculs et conversions
Les opérateurs sont +, -, *, / et % (le reste de la division).
int total = 7 / 2; // 3, division entière
double exact = 7 / 2.0; // 3.5
int reste = 7 % 2; // 1
Quand les deux nombres sont des int, le résultat est un int : la partie décimale disparaît. Il suffit qu'un des deux soit un double pour obtenir un résultat décimal.
Pour passer d'un type large à un type plus étroit, on force avec une conversion explicite (cast) :
double prix = 3.99;
int arrondi = (int) prix; // 3, la partie décimale est coupée
Pour lire un nombre dans un texte, on utilise Integer.parseInt("20") ou Double.parseDouble("3.5").
camelCase : dureeCuisson plutôt que d. Le code se lit bien plus souvent qu'il ne s'écrit.À retenir
- Une variable se déclare avec son type :
int minutes = 20;. - Les types primitifs (
int,double,boolean,char) s'écrivent en minuscules ;Stringest une classe. - Une
Stringest immuable ; compare-la avecequals, jamais avec==. vardéduit le type,finalinterdit de changer la valeur.- Une division de deux
intdonne unint; ajoute.0ou un cast pour contrôler le résultat.
Pour aller plus loin
Sources officielles
Ensuite
La JVM et ton premier programme
Comprendre ce que sont la JVM et le JDK, installer Java 25, puis compiler et lancer un premier programme.
Conditions, boucles et méthodes
Faire des choix avec if et switch, répéter avec for et while, et regrouper du code dans des méthodes.
- Projet
- Lignes de code
- Niveau
- Le quartier
- Appartement
- Java
- Pièce
- 2/7
- Plan n°
- java/02.variables-et-types