public class Exercice1 {
/*
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;
}
}
}
}