System.out :: println telle quelle ou sous forme d'expression lambda.import java.util.stream.Stream;
public class StreamForEach {
  public static void main(String[] args) {
    Stream.of("Munchkin", "Siamese", "Persian", "Tama")
    .forEach(v -> System.out.println(v));
  }
}
import java.util.stream.Stream;
public class Main {
  public static void main(String[] args) {
    Stream.of("Munchkin", "Siamese", "Persian", "Tama")
    .parallel()
    .forEach(v -> System.out.println(v));
    //Persian Tama Siamese Munchkin 
    
    /*Si vous souhaitez conserver la commande
    .forEachOrdered(v -> System.out.println(v)); 
    Munchkin Siamese Persian Tama
    */
  }
}
import java.util.stream.Stream;
public class Main {
  public static void main(String[] args) {
    var str = Stream.of("Munchkin", "Siamese", "Persian", "Scottish Fold", "Tama")
        .filter(s -> s.startsWith("S"))
        .findFirst();
      //Si la méthode orElse est nulle"-"Remplacer par
      System.out.println(str.orElse("-")); //Siamese
  }
}
import java.util.stream.Stream;
public class Main {
  public static void main(String[] args) {
    var str = Stream.of("Munchkin", "Siamese", "Persian", "Scottish Fold", "Tama")
    .parallel()
    .filter(s -> s.startsWith("S"))
    .findAny();
     System.out.println(str.orElse("-")); //Scottish Fold
  }
}
//Vérifiez si toutes les valeurs de la liste sont égales ou supérieures à 0
import java.util.stream.IntStream;
public class StreamMatch {
  public static void main(String[] args) {
    System.out.println(
        IntStream.of(1, 10, 5, -5, 12)
          .allMatch(v -> v >= 0)
      ); //false
  }
}
import java.util.stream.Stream;
public class Main {
  public static void main(String[] args) {
    var list = Stream.of("Munchkin", "Siamese", "Persian", "Scottish Fold", "Tama")
        .filter(s -> s.startsWith("S"))
        .toArray();
    System.out.println(list[0]); //Siamese
  }
}
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class StreamTrans2 {
  public static void main(String[] args) {
    var list = Stream.of("Munchkin", "Siamese", "Persian", "Scottish Fold", "Tama")
        .filter(s -> s.startsWith("S"))
        .collect(Collectors.toList());
    System.out.println(list);
  }
}
//Nommez le tableau d'objets Person:Convertir au format de carte d'adresse e-mail
public class StreamCollectMap {
  public static void main(String[] args) {
    System.out.println(
        Stream.of(
          new Person("Yamada Taro", "[email protected]"),
          new Person("Hanako Suzuki", "[email protected]"),
          new Person("Saburo Inoue", "[email protected]"),
          new Person("Kumi Sato", "[email protected]"),
          new Person("Yamada Taro", "[email protected]")
        ).collect(Collectors.toMap(
          //La clé d'argument représente la clé de la carte
          Person::getName,
          //La valeur de l'argument représente la clé de la carte
          Person::getEmail,
          //Lorsqu'il y a une possibilité de duplication
          (s, a) -> s + "/" + a
          //Écraser la valeur lors de la duplication
          // (s, a) ->  a
        ))
      );
  }
}
public class Person {
  private String name;
  private String email;
  public Person(String name, String email) {
    this.name = name;
    this.email = email;
  }
  public String getName() {
    return name;
  }
  public String getEmail() {
    return email;
  }
}
import java.util.Comparator;
import java.util.stream.Stream;
public class StreamMin {
  public static void main(String[] args) {
    var str = Stream.of("Mebaru", "Sanma", "Inspiration", "Iwashi", "Hokke")
        .min(Comparator.naturalOrder());
      System.out.println(str.orElse("")); //Iwashi
  }
}
//Trouvez le nombre de chaînes supérieur à la longueur de la chaîne 3.
import java.util.stream.Stream;
public class Main {
  public static void main(String[] args) {
    System.out.println(
    Stream.of("Munchkin", "Siamese", "Persian", "Scottish Fold", "Tama")
      .filter(s -> s.length() > 7)
      .count() //2
    );
  }
}
//Somme du tableau int, moyenne
import java.util.stream.IntStream;
public class StreamSum {
  public static void main(String[] args) {
    var list = new int[] { 5, 1, 10, -3 };
    System.out.println(IntStream.of(list).sum()); //13
    System.out.println(IntStream.of(list).average().orElse(0)); //3.25
  }
}
//Grouper les flux de chaînes séparés par des virgules
import java.util.stream.Stream;
public class Main {
  public static void main(String[] args) {
    System.out.println(
      Stream.of("Munchkin", "Siamese", "Persian", "Scottish Fold", "Tama")
        .sorted()
        .reduce((result, str) -> {
          return result + "," + str;
        })
        .orElse("") //Munchkin,Persian,Scottish Fold,Siamese,Tama
    );
  }
}
import java.util.stream.Stream;
public class StreamReduce2 {
  public static void main(String[] args) {
    System.out.println(
      Stream.of("Munchkin", "Siamese", "Persian", "Scottish Fold", "Tama")
        .sorted()
        // .parallel()
        .reduce("Himalayan", (result, str) -> {
          return result + "," + str;
        })
    ); //Himalayan,Munchkin,Persian,Scottish Fold,Siamese,Tama
  }
}
import java.util.stream.Stream;
public class Main {
  public static void main(String[] args) {
    System.out.println(
      Stream.of("153", "211", "112", "350", "418", "208")
        .parallel()
        .reduce(0,
          //Obtenez des éléments individuels
          //Le résultat de l'opération est stocké dans result et value reçoit chaque élément.
          (result, value) -> {
            return result + Integer.parseInt(value); //Convertir la valeur de la chaîne en nombre
          },
          //Résumer les résultats distribués(Flux parallèle uniquement)
          (result1, result2) -> {
            return result1 + result2; //1452
          }
      )
    );
  }
}
//Trier un flux de chaînes donné et le convertir en liste
import java.util.ArrayList;
import java.util.stream.Stream;
public class Main {
  public static void main(String[] args) {
    System.out.println(
      Stream.of("Munchkin", "Siamese", "Persian", "Scottish Fold", "Tama"
        .sorted()
        .collect(
          //Création d'un conteneur qui stocke la valeur dans la première valeur de réduction par le nombre d'expressions
          ArrayList<String>::new,
          //Les arguments sont des conteneurs, des éléments individuels
          (list, str) -> list.add(str),
          //Pour les flux parallèles
          (list1, list2) -> list1.addAll(list2)
        )
    );
  }
}
import java.util.ArrayList;
//import java.util.Arrays;
import java.util.stream.Collector;
import java.util.stream.Stream;
public class Main {
  public static void main(String[] args) {
    System.out.println(
      Stream.of("Munchkin", "Siamese", "Persian", "Scottish Fold", "Tama")
        .sorted()
        .collect(
          Collector.of(
            ArrayList::new,
            ArrayList::add,
            (list1, list2) -> {
              list1.addAll(list2);
              return list1;
            },
            Collector.Characteristics.IDENTITY_FINISH
          )
        )
    );
  }
}
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class Main {
  public static void main(String[] args) {
    System.out.println(
        Stream.of("Munchkin", "Siamese", "Persian", "Scottish Fold", "Tama")
          .sorted()
          .collect(Collectors.joining(",", "<", ">")) //<Munchkin,Persian,Scottish Fold,Siamese,Tama>
      );
  }
}
//Catégoriser les chaînes par longueur
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class Main {
  public static void main(String[] args) {
    System.out.println(
        Stream.of("Munchkin", "Siamese", "Persian", "Scottish Fold", "Tama")
          .sorted()
          .collect(
          //Recevoir le type d'élément avec l'argument str et générer la clé de regroupement
          //Grouper par chaîne
            Collectors.groupingBy(str -> str.length()
          )) //{4=[Tama], 7=[Persian, Siamese], 8=[Munchkin], 13=[Scottish Fold]}
      );
  }
}
public class Main {
  public static void main(String[] args) {
      
    System.out.println(
        Stream.of("Munchkin", "Siamese", "Persian", "Scottish Fold", "Tama")
          .sorted()
          .collect(
            Collectors.groupingBy(
              str -> str.length(),
              Collectors.joining("/") //{4=Tama, 7=Persian/Siamese, 8=Munchkin, 13=Scottish Fold}
          ))
      );
  }
}
//Séparez selon que la chaîne de caractères est de 7 caractères ou moins ou longue
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class Main {
  public static void main(String[] args) {
      
    System.out.println(
        Stream.of("Munchkin", "Siamese", "Persian", "Scottish Fold", "Tama")
          .sorted()
          .collect(
            Collectors.partitioningBy(
              str -> str.length() > 7
          ) //{false=[Persian, Siamese, Tama], true=[Munchkin, Scottish Fold]}
        )
      );
  }
}
//Répertorier les flux avec la méthode toList
//Collections::Convertir en lecture seule avec unmodifiableList
import java.util.Collections;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class Main {
  public static void main(String[] args) {
    System.out.println(
        Stream.of("Munchkin", "Siamese", "Persian", "Scottish Fold", "Tama")
          .sorted()
          .collect(
            Collectors.collectingAndThen(
              Collectors.toList(),
              Collections::unmodifiableList
            )
          )
      );
  }
}
import java.util.IntSummaryStatistics;
import java.util.stream.IntStream;
public class Main {
  public static void main(String[] args) {
    var summary = IntStream.of(5, 13, 7, 2, 30)
      .collect(
     //Passer une référence au sod parseInt dans le constructeur, accepter, combinerDB
        IntSummaryStatistics::new,
        IntSummaryStatistics::accept,
        IntSummaryStatistics::combine
      );
    System.out.println(summary.getMin()); //2
    System.out.println(summary.getSum()); //57
    System.out.println(summary.getAverage()); //11.4
  }
}
        Recommended Posts