Maison > Java > javaDidacticiel > le corps du texte

Comment utiliser les opérations de flux intermédiaires dans JShell en Java 9 ?

WBOY
Libérer: 2023-08-19 08:18:09
avant
830 Les gens l'ont consulté

如何在Java 9的JShell中使用中间流操作?

JShell est un outil introduit dans Java 9, qui accepte des instructions simples en entrée, telles que des expressions, des variables, des méthodes, des classes, etc., et produit des résultats instantanés.

Un Stream est une séquence de valeurs. Une Opération de Flux Intermédiaire est une opération qui opère sur un flux. Par exemple, il peut être appliqué à une expression lambda et produire un autre flux comme résultat.

Voici les opérations de flux intermédiaire les plus couramment utilisées :

  • 1) sorted() : Cette méthode conserve ainsi les éléments du flux consommé, mais les trie également dans leur ordre de tri naturel.
  • 2) distinct() : Cette méthode renvoie un flux qui conserve uniquement les éléments uniques dans le flux d'entrée et peut maintenir l'ordre relatif des éléments retenus.
  • 3) filter() : Cette méthode peut filtrer les éléments du flux en fonction d'une certaine logique.
  • 4) map() : Cette méthode applique une expression lambda pour calculer le nouveau résultat des éléments du flux d'entrée. Il renvoie ensuite ces résultats sous forme de sortie dans un flux.

Dans l'extrait de code ci-dessous, nous pouvons implémenter différentes opérations de flux intermédiaires dans l'outil JShell.

extrait de code

<strong>jshell> List<Integer> numbers = List.of(3, 10, 23, 200, 77, 9, 32);
numbers ==> [3, 10, 23, 200, 77, 9, 32]

jshell> numbers.stream().sorted().forEach(elem -> System.out.println(elem));
3
9
10
23
32
77
200
</strong>
<strong>jshell> List<Integer> numbers = List.of(3, 5, 54, 280, 5, 9, 40);
numbers ==> [3, 5, 54, 280, 5, 9, 40]

jshell> numbers.stream().distinct().forEach(elem -> System.out.println(elem));
3
5
54
280
9
40

</strong><strong>jshell> numbers.stream().distinct().sorted().forEach(elem -> System.out.println(elem));
3
5
9
40
54
280
</strong>
<strong>jshell> numbers.stream().distinct().map(num -> num * num).forEach(elem -> System.out.println(elem));
9
25
2916
78400
81
1600</strong>
Copier après la connexion

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!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal