Arguments - 420111aut25/cours420111 GitHub Wiki
En Java, on peut passer des valeurs à un programme au moment de son exécution, directement depuis la ligne de commande.
Ces valeurs sont appelées arguments et sont transmis au programme via le tableau String[] args
de la méthode main
.
public class MonProgramme {
public static void main(String[] args) {
// args est un tableau de chaînes
}
}
java MonProgramme argument1 argument2 argument3
Ces
argument1
,argument2
, etc. seront accessibles dans le tableauargs
.
public class ExempleArgs {
public static void main(String[] args) {
System.out.println("Premier argument : " + args[0]);
System.out.println("Deuxième argument : " + args[1]);
}
}
-
args[0]
= premier argument -
args[1]
= deuxième argument -
args.length
= nombre total d’arguments
Il faut toujours vérifier la taille du tableau args
pour éviter les erreurs :
if (args.length < 2) {
System.out.println("Erreur : il faut au moins 2 arguments.");
return;
}
Les arguments sont des chaînes de caractères (String
) par défaut. Pour utiliser des nombres :
int age = Integer.parseInt(args[0]); // Convertit en int
double taille = Double.parseDouble(args[1]); // Convertit en double
⚠️ Attention aux erreurs si l’utilisateur entre des valeurs non numériques.
- Fournir des paramètres (nom, âge, etc.) à un programme.
- Contrôler le comportement du programme (mode test, options, etc.).
- Éviter de coder en dur des valeurs.
public class BonjourNom {
public static void main(String[] args) {
if (args.length == 0) {
System.out.println("Usage : java BonjourNom <nom>");
return;
}
System.out.println("Bonjour " + args[0] + " !");
}
}
Élément | Détail |
---|---|
String[] args |
Tableau contenant les arguments |
args.length |
Nombre d’arguments passés |
args[i] |
iᵉ argument (indexé à partir de 0) |
Conversion | Utiliser Integer.parseInt() , Double.parseDouble() , etc. |
Bonne pratique | Vérifier la longueur du tableau avant d'accéder aux éléments |
🎯 Objectif : Lire une température en degrés Celsius en argument, et afficher sa conversion en Fahrenheit.
-
Le programme prend un seul argument numérique.
-
Il affiche :
<valeur>°C équivaut à <valeur_fahrenheit>°F
-
Utilise la formule :
F = C × 9/5 + 32
java Convertisseur 25
25°C équivaut à 77.0°F
🛑 Ajoute une vérification si aucun argument n’est donné ou si l’entrée n’est pas un nombre.
🎯 Objectif : Vérifier si un nombre entier donné en argument est pair ou impair.
-
Le programme prend un entier en argument.
-
Il affiche :
- "
Nombre pair
" si divisible par 2 - "
Nombre impair
" sinon
- "
java Parite 41
Nombre impair
🛑 Ajoute une gestion d’erreur si l’argument est absent ou non entier.
🎯 Objectif : Compter le nombre total de mots passés en argument.
-
Le programme prend n'importe quel nombre de mots (chaînes) en arguments.
-
Il affiche :
Nombre de mots : X
java Compteur Bonjour à tous les étudiants
Nombre de mots : 5
🛡️ Gère le cas où aucun mot n’est fourni (afficher un message).