desislava_topuzakova

06. Predicate For Names

Sep 30th, 2021
948
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.17 KB | None | 0 0
  1. import java.util.Arrays;
  2. import java.util.Collections;
  3. import java.util.List;
  4. import java.util.Scanner;
  5. import java.util.function.*;
  6. import java.util.stream.Collectors;
  7.  
  8. public class FormulaOne_02 {
  9.     public static void main(String[] args) {
  10.         //Function<приема, връща> -> apply
  11.         //Consumer<приема> -> void -> accept
  12.         //Supplier<връща> -> get
  13.         //Predicate<приема> -> false / true -> test
  14.         //BiFunction<приема1, приема2, връща> -> apply
  15.         Scanner scanner = new Scanner(System.in);
  16.         int n = Integer.parseInt(scanner.nextLine());
  17.        //name -> true/ false
  18.         //true: length <= n
  19.         //false: length > n
  20.         Predicate<String> validLength = name -> name.length() <= n;
  21.         String [] names = scanner.nextLine().split("\\s+"); //"Sara Sam George Mark John".split -> ["Sara", "Sam", ...]
  22.  
  23.         Arrays.stream(names).filter(validLength).forEach(System.out::println);
  24.         //filter ->true: оставя; false: маха
  25.         // оставя в списъка елементите, които отговарят на дадено условие
  26.  
  27.  
  28.  
  29.     }
  30. }
Advertisement
Add Comment
Please, Sign In to add comment