Trouver le nombre maximum dans un tableau en Java
- Trouver le nombre maximum dans un tableau à l’aide de la méthode itérative
-
Trouver le nombre maximum dans un tableau à l’aide de
Stream
-
Trouver le nombre maximum dans un tableau à l’aide de
Arrays.sort()
Un tableau contient des données d’un type similaire. Bien que vous puissiez déjà lire tous les éléments et effectuer plusieurs opérations dessus, cet article vous montrera comment trouver la valeur maximale dans un tableau en Java.
Trouver le nombre maximum dans un tableau à l’aide de la méthode itérative
Cette méthode est la manière traditionnelle de trouver le nombre maximum à partir d’un tableau. Il comprend un itérateur qui est utilisé pour parcourir chaque élément du tableau. Ci-dessous, nous avons un tableau d’entiers, intArray
; d’abord, nous créons une variable maxNum
et l’initialisons avec le premier élément de intArray
.
Nous créons une boucle for améliorée qui prend le tableau et renvoie chaque élément à chaque itération. Ensuite, nous vérifions chaque élément avec maxNum
qui a 24, et une fois qu’il trouve un nombre supérieur à 24, il remplace 24 par ce nombre dans maxNum
. Il remplacera le nombre dans maxNum
jusqu’à ce qu’il atteigne la fin du tableau ; sinon, il n’a pas trouvé un nombre plus grand que la valeur existante dans maxNum
.
public class ArrayMax {
public static void main(String[] args) {
int[] intArray = {24, 2, 0, 34, 12, 110, 2};
int maxNum = intArray[0];
for (int j : intArray) {
if (j > maxNum)
maxNum = j;
}
System.out.println("Maximum number = " + maxNum);
}
}
Production:
Maximum number = 110
Trouver le nombre maximum dans un tableau à l’aide de Stream
Java 8 a introduit la Stream API
qui fournit plusieurs méthodes utiles. L’une d’entre elles est la méthode Arrays.stream()
qui prend un tableau et renvoie un flux séquentiel. Dans notre cas, nous avons un tableau de type int
, et lorsque nous le passons dans le flux, il renvoie un IntStream
.
La fonction IntStream
est livrée avec une méthode max()
qui permet de trouver la valeur maximale dans le flux. Il renvoie un OptionalInt
qui décrit que le flux peut également avoir des valeurs int
vides.
Enfin, comme nous voulons le nombre maximum comme un int
, nous utiliserons la méthode optionalInt.getAsInt()
qui renvoie le résultat sous la forme d’un type int
.
import java.util.Arrays;
import java.util.OptionalInt;
import java.util.stream.IntStream;
public class ArrayMax {
public static void main(String[] args) {
int[] intArray = {24, 2, 0, 34, 12, 11, 2};
IntStream intStream = Arrays.stream(intArray);
OptionalInt optionalInt = intStream.max();
int maxAsInt = optionalInt.getAsInt();
System.out.println("Maximum number = " + maxAsInt);
}
}
Production:
Maximum number = 34
Trouver le nombre maximum dans un tableau à l’aide de Arrays.sort()
La dernière technique de cette liste utilise la méthode de tri qui organise le tableau par ordre croissant. Pour trier le tableau, nous utilisons la fonction Arrays.sort()
et passons intArray
en argument.
Pour voir à quoi ressemblera le tableau après l’opération de tri, nous l’imprimons. Maintenant, comme le tableau est trié et que le plus grand nombre de tous est à la position la plus à gauche, nous obtenons sa position en utilisant la fonction intArray.length - 1
, qui est à la dernière position du tableau.
import java.util.Arrays;
public class ArrayMax {
public static void main(String[] args) {
int[] intArray = {24, 340, 0, 34, 12, 10, 20};
Arrays.sort(intArray);
System.out.println("intArray after sorting: " + Arrays.toString(intArray));
int maxNum = intArray[intArray.length - 1];
System.out.println("Maximum number = " + maxNum);
}
}
Production:
intArray after sorting: [0, 10, 12, 20, 24, 34, 340]
Maximum number = 340
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn