Dans cette section, nous allons écrire un programme Java pour trouver le plus grand nombre impair dans un tableau à l'aide de flux et de filtres. Les nombres impairs sont des nombres qui ne sont pas divisibles par "2", ou ces nombres ont un reste de 1 lorsqu'ils sont divisés par "2". En d’autres termes, cela peut s’écrire sous la forme ‘2n+1’. Nous trouverons le plus grand nombre impair du tableau.
Input: array = {1, 7, 2, 3, 9, 5, 10} Output: Maximum odd number is 9
Dans l'exemple ci-dessus, le plus grand nombre impair du tableau est 9.
Input: array = {11, 17, 12, 13, 19, 15, 20} Output: Maximum odd number is 19
Dans l'exemple ci-dessus, le plus grand nombre impair du tableau est 19.
stream() - Il est utilisé pour créer un flux d'éléments afin que nous puissions traiter les données en utilisant des méthodes comme filter(), map(), réduire() etc
Arrays.stream(collection)
filter() - Utilisé pour filtrer les données dans un flux, c'est-à-dire sélectionner des éléments spécifiques du flux en fonction des conditions. Il renvoie une valeur booléenne.
treamobject.filter(condition)
reduce() - Utilisé pour réduire le nombre d'éléments et renvoyer un seul numéro de résultat basé sur des opérations binaires.
Streamobject.reduce(initial value, binary operation)
Nous allons maintenant discuter des différentes manières de trouver le plus grand nombre impair dans un tableau à l'aide de flux et de filtres (implémentés à l'aide de code en Java).
Initialisez le tableau et utilisez la méthode stream() pour créer un flux pour le tableau
Utilisez la méthode de filtrage () et les paramètres comme conditions pour filtrer le flux afin de filtrer les nombres impairs du tableau.
Utilisez la méthode max() pour renvoyer le plus grand nombre impair, s'il n'y a pas de nombre impair, utilisez la méthode orElse() pour imprimer -1.
Dans cet exemple, nous initialisons d'abord un tableau. Ensuite, nous utilisons la méthode "stream()" pour convertir le tableau en flux, puis utilisons la méthode "filter()" sur le flux pour filtrer les nombres impairs présents dans le flux, et sur le flux résultant nous utilisons le max () méthode pour trouver tous les nombres impairs dans le flux la valeur maximale. S'il n'y a pas de nombres impairs dans le flux, nous utilisons la fonction "orElse" pour renvoyer la valeur du paramètre d'entrée. Ensuite, nous imprimons la valeur stockée dans la variable "maximumOdd".
import java.util.*; public class Main { public static void main(String[] args) { int[] array = {1, 7, 2, 3, 9, 5, 10}; int maximumOdd = Arrays.stream(array) .filter(n -> n % 2 != 0) .max() .orElse(-1); System.out.println("Maximum odd number is: " +maximumOdd); } }
Maximum odd number is: 9
Initialisez le tableau et utilisez la méthode stream() pour créer un flux pour le tableau
Utilisez la méthode de filtrage () et les paramètres comme conditions pour filtrer le flux afin de filtrer les nombres impairs du tableau.
Utilisez la méthode réduire() pour trouver le plus grand nombre impair
Utilisez l'opérateur ternaire pour imprimer le plus grand nombre impair, ou -1 s'il n'y a pas de nombre impair.
Dans cet exemple, nous initialisons d'abord un tableau. Ensuite, nous utilisons la méthode "stream()" pour convertir le tableau en flux, puis utilisons la méthode "filter()" sur le flux pour filtrer les nombres impairs présents dans le flux, et sur le flux résultant nous utilisons la réduction () méthode pour trouver tous les nombres impairs dans le flux la valeur maximale. S'il n'y a pas de nombres impairs dans le flux, le nombre MaximumOdd contient Integer.MIN_VALUE. Nous utilisons ensuite l'opération ternaire '?' et vérifions si la variable 'maximumOdd' contient Integer.MIN_VALUE. S'il contient Integer.MIN_VALUE, alors nous imprimons -1, sinon nous imprimons la valeur stockée dans la variable "maximumOdd".
import java.util.*; public class Main { public static void main(String[] args) { int[] array = {1, 7, 2, 3, 9, 5}; int maximumOdd = Arrays.stream(array) .filter(n -> n % 2 != 0) .reduce(Integer.MIN_VALUE, Integer::max); System.out.println("Maximum odd number in the given array is " + (maximumOdd != Integer.MIN_VALUE ? maximumOdd : -1)); } }
Maximum odd number in the given array is 9
Ainsi, dans cet article, nous avons expliqué comment trouver le nombre impair maximum dans un tableau en utilisant différentes méthodes utilisant des flux et des filtres en Java.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!