[JAVA] Méthode de mappage de l'API Stream

Résumé

map transforme tous les éléments stockés dans son objet stream La méthode map utilise deux variables de type L'interface Stream reçoit «Stream » et la méthode de carte renvoie «Stream ».

signature de méthode de carte

public interface Stream<T> ...
     <R> Stream<R> map(Function<? super T,? extends R> mapper)

La première ligne

L'interface Stream est déclarée. Ici, la variable de type T est spécifiée pour créer une interface de type générique. Autrement dit, tout type peut être traité.

2e ligne

Définit la signature de la méthode de carte.

<R> -> Déclaration de variable de type -> La méthode map vous permet d'utiliser deux variables de type, T et R.

Stream<R> -> Déclaration de la valeur de retour de la méthode map -> La valeur de retour de la méthode map est de type Stream

** Puisque la méthode de carte est définie dans l'interface Stream \ <T >, cette méthode sera responsable de la conversion de Stream <T> en Stream <R>. ** **

map -> Nom de la méthode

Function<? super T, ? extends R> -> Type d'argument -> Function est une interface fonctionnelle introduite à partir de Java8 -> L'interface de fonction prend un objet de type T et renvoie un objet de type R -> ? Super et? Extends sont appelés des caractères génériques de limite -> Cela élargit la gamme des fonctions qui peuvent être passées à la méthode map.

mapper -> Nom de l'argument formel

Exemple

sample.java


public List<String> collectEmpNames(List<Employee> employees) {
    return employees.stream()
                  .map(e -> e.getName())
                  .collect(Collectors.toList());
  }

La première ligne

La méthode stream () est appelée pour convertir la liste des employés en flux.

2e ligne

Vous appelez la méthode de la carte. Extrait le nom de chaque élément dans Employee's Stream et le convertit en une chaîne Stream.

e -> e.getName() La méthode map prend un objet de fonction de type Function comme argument. L'expression lambda ci-dessus est un objet qui implémente l'interface Function.

Plus précisément ... L'employé est stocké dans Stream lorsque la méthode de carte est appelée. Autrement dit, le type T est Employé. Par conséquent, getName () de la classe Employee peut être appelé sur le côté droit de l'expression. Étant donné que la valeur de retour de getName () est String, la valeur de retour de la méthode de carte est Stream \ <String >.

3e ligne

Appel de la méthode de collecte pour convertir Stream en List.

Recommended Posts

Méthode de mappage de l'API Stream
[Java] API / carte de flux
Méthode de la carte
Mémo API Stream
API Java Stream
[Pratique] Méthode de la carte
méthode de la carte rubis
Principes de base de l'API Stream
API Stream (classe Collectors)
Pratique de l'API Java8 Stream
À propos de la méthode cartographique
Aide-mémoire de l'API Java Stream
API Java Stream en 5 minutes
[Java] Stream API - Traitement de l'arrêt du flux
[Java] Stream API - Traitement intermédiaire de flux
[Java] Introduction à l'API Stream
[Java] Opération intermédiaire de l'API Stream
[Java] Stream (filtrer, mapper, forEach, réduire)
[java8] Pour comprendre l'API Stream
[Introduction à Java] À propos de l'API Stream
Créez une alternative à l'API Stream facile à étendre
Différence entre Stream map et flatMap
J'ai essayé d'utiliser l'API Java8 Stream
Java 8 ~ Stream API ~ pour commencer maintenant
Conversion de liste Java8 avec Stream map
Traitement des données à l'aide de l'API de flux de Java 8
De nos jours, les expressions Java Lambda et l'API de flux
[Rails] Comment utiliser la méthode de la carte
Essayez différentes méthodes d'API Java Stream (maintenant)
Classe anonyme (visant à introduire l'API de flux)
J'ai essayé de résumer l'API Stream
Remarques sur l'API Stream et SQL de Java