zoukankan      html  css  js  c++  java
  • 不带,以及带参数,带返回值的Lambda表达式

    无参数无返回值

    package com.wcy;
    //lambda推导必须存在类型
    public class Lambda {
        //静态内部类
        static class Like2 implements ILike{
            @Override
            public void lambda() {
                System.out.println("I like lambda2");
            }
        }
        public static void main(String[] args) {
            ILike like = new Like();
            like.lambda();
            like = new Like2();
            like.lambda();
            //局部内部类
            class Like3 implements ILike{
                public void lambda() {
                    System.out.println("I like lambda3");
                }
            }
            like = new Like3();
            like.lambda();
            //匿名内部类
            like = new ILike() {
                public void lambda() {
                    System.out.println("I like lambda4");
                }    
            };
            like.lambda();
            //lambda
            like = ()->{
                System.out.println("I like lambda5");
            };
            like.lambda();
        }
    }
    
    interface ILike{
        void lambda();
    }
    //外部类
    class Like implements ILike{
        @Override
        public void lambda() {
            System.out.println("I like lambda1");
        }
    }

    带参数

    package com.wcy;
    public class Lambda2{
        public static void main(String[] args) {
            ILove love=(int a)->{    //可以省略int,自定跟接口匹配。只有一个参数的时候()也可以省略,如果只有一行代码,{ }也可以省略!
                System.out.println("i love lambda  "+a);
            };
            love.lambda(100);
            
            love=(a)->{    //省略int 自定跟接口匹配
                System.out.println("i love lambda  "+a);
            };
            love.lambda(99);
    
            love=a->{    //只有一个参数的时候 ()也可以省略
                System.out.println("i love lambda  "+a);
            };
            love.lambda(98);
        }
    }
    interface ILove{
        void lambda(int a);
    }

    带参数的带返回值的

    package com.wcy;
    public class Lambda3 {
        public static void main(String[] args) {
            ILove love=(int a,int b)->{  
                System.out.println("i love lambda  "+(a+b));
                return a+b;
            };
            System.out.println(love.lambda(100,200));
        } 
    }
    interface ILove{
        int lambda(int a,int b);
    }

    带参数的带返回值的

    package com.wcy;
    public class Lambda3 {
        public static void main(String[] args) {
            ILove love=(int a,int b)->{  
                System.out.println("i love lambda  "+(a+b));
                return a+b;
            };
            love.lambda(12, 16);
            
            love=(a,b)->{  
                System.out.println("i love lambda  "+(a+b));
                return a+b;
            };
            love.lambda(12, 10);
            
            love=(a,b)->{ 
                return a+b;
            };
            System.out.println(love.lambda(12, 8));
            
            love=(a,b)->a+b;
            System.out.println(love.lambda(12, 6));
        } 
    }
    interface ILove{
        int lambda(int a,int b);
    }
  • 相关阅读:
    SignalR 聊天室实例详解(服务器端推送版)
    一种解决图片防盗链的方法
    python3基础-数学运算
    测试开发之路
    页面加载时让其显示笼罩层与加载等待图片
    在SQL SERVER中获取表中的第二条数据
    html+js 的一些小问题
    数据库连接错误问题
    ObjectStateManager 中已存在具有同一键的对象。ObjectStateManager 无法跟踪具有相同键的多个对象。
    正则表达式实例
  • 原文地址:https://www.cnblogs.com/Galesaur-wcy/p/14056625.html
Copyright © 2011-2022 走看看