zoukankan      html  css  js  c++  java
  • Java8-Lambda-No.02

    
    public class Lambda2 {
    
        @FunctionalInterface
        public static interface Converter<F, T> {
            T convert(F from);
        }
    
        static class Something {
            String startsWith(String s) {
                return String.valueOf(s.charAt(0));
            }
        }
    
        interface PersonFactory<P extends Person> {
            P create(String firstName, String lastName);
        }
    
        public static void main(String[] args) {
            Converter<String, Integer> integerConverter1 = (from) -> Integer.valueOf(from);
            Integer converted1 = integerConverter1.convert("123");
            System.out.println(converted1);   // result: 123
    
    
            // method reference
    
            Converter<String, Integer> integerConverter2 = Integer::valueOf;
            Integer converted2 = integerConverter2.convert("123");
            System.out.println(converted2);   // result: 123
    
    
            Something something = new Something();
    
            Converter<String, String> stringConverter = something::startsWith;
            String converted3 = stringConverter.convert("Java");
            System.out.println(converted3);    // result J
    
            // constructor reference
    
            PersonFactory<Person> personFactory = Person::new;
            Person person = personFactory.create("Peter", "Parker");
        }
    }
    
  • 相关阅读:
    CSS learnning...
    软件工程课程建议
    结对编程(三)
    结对编程(二)
    关于结对编程的感想
    关于“Durian”调查问卷的心得体会
    我的软件工程课目标
    软件工程课程建议
    进阶版《结对编程》
    结对编程实现四则运算
  • 原文地址:https://www.cnblogs.com/bilaisheng/p/10210916.html
Copyright © 2011-2022 走看看