Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Arrays;
- import java.util.List;
- @FunctionalInterface
- interface Mappable<T, R> {
- R map(T t);
- }
- public class Main {
- public static void main(String[] args) {
- Mappable<Double, Integer> doubleToIntegerMapper = Double::intValue;//метод референс. Аналог в JS: Double.intValue
- Mappable<Double, Double> ceiler = d -> Math.ceil(d);
- System.out.println(ceiler.map(1.6));
- System.out.println(doubleToIntegerMapper.map(1.6));
- System.out.println("--------------------------------");
- //В джаве есть обычный [] массив, но на нем нет методов как в JS. Поэтому юзают List
- //Для инициализации List нет литерального синтаксиса, поэтому Arrays.asList
- List<Double> doubles = Arrays.asList(1.1, 1.5, 1.6);
- //stream() потому что у List нет метода map, сначала приводить его к Stream
- doubles.stream()
- .map(ceiler::map)
- .map(doubleToIntegerMapper::map)
- .forEach(System.out::println);
- System.out.println("--------------------------------");
- doubles.stream()
- .map(doubleToIntegerMapper::map)
- .forEach(System.out::println);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement