SHARE
TWEET

Untitled

a guest Jun 25th, 2019 62 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import java.util.Arrays;
  2. import java.util.List;
  3.  
  4. @FunctionalInterface
  5. interface Mappable<T, R> {
  6.     R map(T t);
  7. }
  8.  
  9. public class Main {
  10.     public static void main(String[] args) {
  11.         Mappable<Double, Integer> doubleToIntegerMapper = Double::intValue;//метод референс. Аналог в JS: Double.intValue
  12.         Mappable<Double, Double> ceiler = d ->  Math.ceil(d);
  13.  
  14.         System.out.println(ceiler.map(1.6));
  15.         System.out.println(doubleToIntegerMapper.map(1.6));
  16.         System.out.println("--------------------------------");
  17.  
  18.         //В джаве есть обычный [] массив, но на нем нет методов как в JS. Поэтому юзают List
  19.         //Для инициализации List нет литерального синтаксиса, поэтому Arrays.asList
  20.         List<Double> doubles = Arrays.asList(1.1, 1.5, 1.6);
  21.  
  22.         //stream() потому что у List нет метода map, сначала приводить его к Stream
  23.         doubles.stream()
  24.                .map(ceiler::map)
  25.                .map(doubleToIntegerMapper::map)
  26.                .forEach(System.out::println);
  27.         System.out.println("--------------------------------");
  28.         doubles.stream()
  29.                .map(doubleToIntegerMapper::map)
  30.                .forEach(System.out::println);
  31.     }
  32. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top