public class Exercice1 { public static void premiersCarres(int n) { for(int i=1; i<=n; i++) { System.out.println(i + " au carré vaut : " + i*i); } } public static void main(String[] args) { /* Ici, si l'utilisateur n'entre aucune valeur sur la ligne de commande, on considère que n vaut 10. Sinon, on utilise pour n la valeur qu'il a entré sur la ligne de commande. Par défaut, n vaut donc 10, et on ne le modifie que si nécessaire. */ int n = 10; if (args.length != 0) { n = Integer.parseInt(args[0]); } premiersCarres(n); } }
public class Exercice2 { /* Cette méthode initialise les éléments du tableau tab au carré de leur indice. */ public static void initCarreIndice(int[] tab) { for(int i=0; i<tab.length; i++) { tab[i] = i*i; } } /* Cette méthode affiche sur la sortie standard (System.out) les valeurs des éléments du tableau. */ public static void affiche(int[] tab) { for(int i=0; i<tab.length; i++) { // Ici, on affiche les valeurs sur la même ligne // en les séparant par un blanc System.out.print(tab[i] + " "); } } public static void main(String[] args) { // Définition d'un tableau de 10 entiers int t[] = new int[10]; // Affichage de ce tableau avant initialisation System.out.println("Avant initialisation:"); affiche(t); // Initialisation des éléments du tableau au carré de leur indice initCarreIndice(t); // Affichage du tableau après cette initialisation // Remarque: le caractère '\n' est interprété comme un retour à la ligne System.out.println("\nAprès initialisation:"); affiche(t); } }
public static void trier(int[] tab) { int aux; for(int i=tab.length-1; i>1; i--) { for(int j=0; j<i; j++) { if(tab[j] > tab[i]) { aux = tab[j]; tab[j] = tab[i]; tab[i] = aux; } } } }
public static void main(String[] args) { int[] t = new int[args.length]; for(int i=0; i<args.length; i++) { t[i] = Integer.parseInt(args[i]); } trier(t); affiche(t); }
Ici, on dispose de deux méthodes trier qui ont le même nom mais des paramètres différents (l'une de type tableau d'entiers et l'autre de type tableau de String): on dit qu'on a surcharge de méthode. C'est le compilateur qui décide, en fonction de l'argument que l'on passe à la méthode lors de l'appel, de quelle méthode il s'agit.
public static void trier(String[] tab) { String aux; for(int i=tab.length-1; i>1; i--) { for(int j=0; j<i; j++) { if(tab[j].compareTo(tab[i]) > 0) { aux = tab[j]; tab[j] = tab[i]; tab[i] = aux; } } } }