Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Exercices sur les Méthodes | Méthodes
Java Avancé
course content

Contenu du cours

Java Avancé

Java Avancé

1. Deep Java Structure
2. Méthodes
3. String Avancé
4. Classes
5. Classes Avancées

book
Exercices sur les Méthodes

Pratique

Les méthodes peuvent être difficiles à comprendre, c'est pourquoi ce chapitre propose des exemples de différentes méthodes en action, montrant leur fonctionnement, où les utiliser, et comment écrire et combiner plusieurs méthodes de manière efficace.

Exemple 1

Commençons par une méthode qui prend un tableau de type int et l'inverse, de sorte que la dernière valeur devienne la première et la première devienne la dernière :

Main.java

Main.java

copy
123456789101112131415161718192021222324252627282930
package com.example; public class Main { static int[] flipIntArray(int[] array) { int[] result = new int[array.length]; int index = 0; for (int i = array.length - 1; i >= 0; i--) { result[index] = array[i]; index++; } return result; } static void printIntArrayToTheConsole(int[] array) { for (int element : array) { System.out.print(element + " "); } System.out.println(); } public static void main(String[] args) { // do not modify the code below int[] firstArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int[] secondArray = {0, 2, 4, 6, 8, 10, 12, 14, 16}; printIntArrayToTheConsole(flipIntArray(firstArray)); printIntArrayToTheConsole(flipIntArray(secondArray)); } // do not modify the code above }
  • Tout d'abord, observons la méthode flipIntArray à la ligne 4, qui utilise une boucle comptant à partir de la fin du tableau et stocke ses valeurs dans un nouveau tableau de même taille. Il y a également une variable index à la ligne 6 qui s'incrémente pour stocker les valeurs dans le tableau result ;

  • Ensuite, vous pouvez voir la méthode à la ligne 14 du chapitre précédent, que j'utilise pour afficher le tableau en une seule ligne de code ;

  • Passons maintenant à un point intéressant. Vous pouvez voir aux lignes 25-26 que je passe une méthode en paramètre à l'intérieur d'une autre méthode. Cela s'explique par le fait que j'utilise une méthode qui retourne int[] à l'intérieur d'une méthode qui prend int[] comme paramètre, ce qui permet d'économiser la mémoire allouée à la création de variables. Nous pouvons constater que nos méthodes fonctionnent et affichent les valeurs correctes.

Exemple 2

Supposons que nous devions écrire une méthode qui calcule la factorielle, prenant une variable entière en entrée.

Main.java

Main.java

copy
12345678910111213141516171819202122232425262728293031
package com.example; // do not modify the code below this comment public class Main { // method to calculate the factorial of a number static int calculateFactorial(int input) { int result = 1; // loop to calculate factorial by multiplying each number from 1 to input for (int i = 1; i <= input; i++) { result = result * i; } // return the final result of the factorial calculation return result; } public static void main(String[] args) { // initializing the first number for factorial calculation int first = 5; // initializing the second number for factorial calculation int second = 7; // initializing the third number for factorial calculation int third = 4; // calculating and printing the factorial of the first number System.out.println("Factorial of the first number = " + calculateFactorial(first)); // calculating and printing the factorial of the second number System.out.println("Factorial of the second number = " + calculateFactorial(second)); // calculating and printing the factorial of the third number System.out.println("Factorial of the third number = " + calculateFactorial(third)); } }

Dans cet exemple, nous avons écrit une méthode qui multiplie la variable d'accumulation par les nombres de 1 jusqu'au nombre donné afin de calculer la factorielle. Il s'agit d'une approche simple, et vous pouvez observer comment cette méthode est utilisée plusieurs fois dans la méthode main, ce qui économise de l'espace et améliore la lisibilité du code. Ensuite, nous utilisons notre méthode à l'intérieur de System.out.println car la méthode retourne une valeur de type int.

Exemple 3

Nous allons écrire une méthode qui crée une abréviation à partir d'un tableau de chaînes de caractères.

Main.java

Main.java

copy
1234567891011121314151617181920212223242526272829
package com.example; // do not modify the code below this comment public class Main { // method to create abbreviation by taking first letter of each word static String makeAbbreviation(String[] input) { StringBuilder result = new StringBuilder(); // iterate through each word and append the first letter to result for (String word : input) { result.append(word.toUpperCase().charAt(0)); } // return the abbreviation as a string return result.toString(); } public static void main(String[] args) { // initializing arrays with words for abbreviation String[] firstArray = {"united", "nations"}; String[] secondArray = {"North", "Atlantic", "Treaty", "Organization"}; String[] thirdArray = {"Oh", "my", "God"}; // printing abbreviation for the first array System.out.println(makeAbbreviation(firstArray)); // printing abbreviation for the second array System.out.println(makeAbbreviation(secondArray)); // printing abbreviation for the third array System.out.println(makeAbbreviation(thirdArray)); } }

Dans cette méthode, nous utilisons la classe StringBuilder pour appeler la méthode append() et ajouter la première lettre en majuscule à une chaîne initialement vide. Ainsi, nous parcourons chaque élément du tableau, prenons la lettre à la position zéro (la première lettre de chaque mot), la convertissons en majuscule à l'aide de la méthode toUpperCase(), puis l'ajoutons à notre résultat avec la méthode append(). Enfin, nous utilisons la méthode toString() pour convertir notre StringBuilder en String.

1. Qu'est-ce qu'une valeur de retour dans une méthode ?

2. Que retourne une méthode void ?

3. Une méthode peut-elle être utilisée à l'intérieur d'une autre méthode ?

question mark

Qu'est-ce qu'une valeur de retour dans une méthode ?

Select the correct answer

question mark

Que retourne une méthode void ?

Select the correct answer

question mark

Une méthode peut-elle être utilisée à l'intérieur d'une autre méthode ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 5

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

course content

Contenu du cours

Java Avancé

Java Avancé

1. Deep Java Structure
2. Méthodes
3. String Avancé
4. Classes
5. Classes Avancées

book
Exercices sur les Méthodes

Pratique

Les méthodes peuvent être difficiles à comprendre, c'est pourquoi ce chapitre propose des exemples de différentes méthodes en action, montrant leur fonctionnement, où les utiliser, et comment écrire et combiner plusieurs méthodes de manière efficace.

Exemple 1

Commençons par une méthode qui prend un tableau de type int et l'inverse, de sorte que la dernière valeur devienne la première et la première devienne la dernière :

Main.java

Main.java

copy
123456789101112131415161718192021222324252627282930
package com.example; public class Main { static int[] flipIntArray(int[] array) { int[] result = new int[array.length]; int index = 0; for (int i = array.length - 1; i >= 0; i--) { result[index] = array[i]; index++; } return result; } static void printIntArrayToTheConsole(int[] array) { for (int element : array) { System.out.print(element + " "); } System.out.println(); } public static void main(String[] args) { // do not modify the code below int[] firstArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int[] secondArray = {0, 2, 4, 6, 8, 10, 12, 14, 16}; printIntArrayToTheConsole(flipIntArray(firstArray)); printIntArrayToTheConsole(flipIntArray(secondArray)); } // do not modify the code above }
  • Tout d'abord, observons la méthode flipIntArray à la ligne 4, qui utilise une boucle comptant à partir de la fin du tableau et stocke ses valeurs dans un nouveau tableau de même taille. Il y a également une variable index à la ligne 6 qui s'incrémente pour stocker les valeurs dans le tableau result ;

  • Ensuite, vous pouvez voir la méthode à la ligne 14 du chapitre précédent, que j'utilise pour afficher le tableau en une seule ligne de code ;

  • Passons maintenant à un point intéressant. Vous pouvez voir aux lignes 25-26 que je passe une méthode en paramètre à l'intérieur d'une autre méthode. Cela s'explique par le fait que j'utilise une méthode qui retourne int[] à l'intérieur d'une méthode qui prend int[] comme paramètre, ce qui permet d'économiser la mémoire allouée à la création de variables. Nous pouvons constater que nos méthodes fonctionnent et affichent les valeurs correctes.

Exemple 2

Supposons que nous devions écrire une méthode qui calcule la factorielle, prenant une variable entière en entrée.

Main.java

Main.java

copy
12345678910111213141516171819202122232425262728293031
package com.example; // do not modify the code below this comment public class Main { // method to calculate the factorial of a number static int calculateFactorial(int input) { int result = 1; // loop to calculate factorial by multiplying each number from 1 to input for (int i = 1; i <= input; i++) { result = result * i; } // return the final result of the factorial calculation return result; } public static void main(String[] args) { // initializing the first number for factorial calculation int first = 5; // initializing the second number for factorial calculation int second = 7; // initializing the third number for factorial calculation int third = 4; // calculating and printing the factorial of the first number System.out.println("Factorial of the first number = " + calculateFactorial(first)); // calculating and printing the factorial of the second number System.out.println("Factorial of the second number = " + calculateFactorial(second)); // calculating and printing the factorial of the third number System.out.println("Factorial of the third number = " + calculateFactorial(third)); } }

Dans cet exemple, nous avons écrit une méthode qui multiplie la variable d'accumulation par les nombres de 1 jusqu'au nombre donné afin de calculer la factorielle. Il s'agit d'une approche simple, et vous pouvez observer comment cette méthode est utilisée plusieurs fois dans la méthode main, ce qui économise de l'espace et améliore la lisibilité du code. Ensuite, nous utilisons notre méthode à l'intérieur de System.out.println car la méthode retourne une valeur de type int.

Exemple 3

Nous allons écrire une méthode qui crée une abréviation à partir d'un tableau de chaînes de caractères.

Main.java

Main.java

copy
1234567891011121314151617181920212223242526272829
package com.example; // do not modify the code below this comment public class Main { // method to create abbreviation by taking first letter of each word static String makeAbbreviation(String[] input) { StringBuilder result = new StringBuilder(); // iterate through each word and append the first letter to result for (String word : input) { result.append(word.toUpperCase().charAt(0)); } // return the abbreviation as a string return result.toString(); } public static void main(String[] args) { // initializing arrays with words for abbreviation String[] firstArray = {"united", "nations"}; String[] secondArray = {"North", "Atlantic", "Treaty", "Organization"}; String[] thirdArray = {"Oh", "my", "God"}; // printing abbreviation for the first array System.out.println(makeAbbreviation(firstArray)); // printing abbreviation for the second array System.out.println(makeAbbreviation(secondArray)); // printing abbreviation for the third array System.out.println(makeAbbreviation(thirdArray)); } }

Dans cette méthode, nous utilisons la classe StringBuilder pour appeler la méthode append() et ajouter la première lettre en majuscule à une chaîne initialement vide. Ainsi, nous parcourons chaque élément du tableau, prenons la lettre à la position zéro (la première lettre de chaque mot), la convertissons en majuscule à l'aide de la méthode toUpperCase(), puis l'ajoutons à notre résultat avec la méthode append(). Enfin, nous utilisons la méthode toString() pour convertir notre StringBuilder en String.

1. Qu'est-ce qu'une valeur de retour dans une méthode ?

2. Que retourne une méthode void ?

3. Une méthode peut-elle être utilisée à l'intérieur d'une autre méthode ?

question mark

Qu'est-ce qu'une valeur de retour dans une méthode ?

Select the correct answer

question mark

Que retourne une méthode void ?

Select the correct answer

question mark

Une méthode peut-elle être utilisée à l'intérieur d'une autre méthode ?

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 5
some-alt