JDK1.8 最全特性

JDK1.8 最全特性

1. Lamdba表达式

Lambda表达式是什么?

Lambda是一个匿名函数,我们可以将Lambda表达式理解为一段可以传递的代码(将代码像数据一样传递)。使用它可以写出简洁、灵活的代码。作为一种更紧凑的代码风格,使java语言表达能力得到提升。

public static void main(String[] args) {
   
 		//使用匿名函数
        new Thread(new Runnable(){
   
            @Override
            public void run(){
   
                System.out.println("我是没有使用Lambda表达式:不简洁");
            }
        }).start();
	      
        
        
        //使用Lambda表达式
        new Thread(
        		()->System.out.println("我是使用Lambda表达式:简洁、灵活")
        ).start();
        
}

Lambda表达式在java语言中引入了一种新的语法元素和操作。这种操作符号为“->”,Lambda操作符或箭头操作符,它将Lambda表达式分割为两部分。 左边:指Lambda表达式的所有参数 右边:指Lambda体,即表示Lambda表达式需要执行的功能

六种语法格式 :

  1. 语法格式一:无参数、无返回值,只需要一个Lambda体
public interface Lock {
   
	public abstract void lockUp();  //上锁
}



public static void main(String[] args) {
   
    Lock lock = ()-> System.out.println("Lambda表达式:简洁、灵活,优雅永不过时");
    lock.lockUp();
}
  1. 语法格式二:lambda有一个参数、无返回值

    public interface Lock {
         
    	public abstract void lockUp(String str);  //上锁
    }
    
    
    
    public static void main(String[] args) {
         
        Lock lock = (s) -> System.out.println(s+"上锁");
        lock.lockUp("张三");
    }
    
  2. Lambda只有一个参数时,可以省略()

    public interface Lock {
         
    	public abstract void lockUp(String str);  //上锁
    }
    
    
    
    public static void main(String[] args) {
         
        Lock lock = s -> System.out.println(s+"上锁");
        lock.lockUp("张三");
    }
    
  3. 语法格式四:Lambda有两个参数时,并且有返回值

    public interface Lock {
         
    	public abstract String lockUp(String str,String str2);  //上锁
    }
    
    Lock lock = (s1,s2) -> {
         
        System.out.println("门被上锁。。。。。。");
        return "上锁";
    };
    lock.lockUp("张三","李四");
    
  4. 语法格式五:当Lambda体只有一条语句的时候,return和{}可以省略掉

    public interface Lock {
         
    	public abstract String lockUp(String str,String str2);  //上锁
    }
    
    Lock lock = (s1,s2) ->  "上锁";
    lock.lockUp("张三","李四");
    
  5. 类型推断:数据类型可以省略,因为编译器可以推断得出,称为“类型推断”

    public interface Lock {
         
    	public abstract void lockUp(String str);  //上锁
    }
    
    
    
    public static void main(String[] args) {
         
        //可以写类型
        Lock lock = (String s) -> System.out.println(s+"上锁");
        lock.lockUp("张三");
        
        //可以不写类型
        Lock lock 
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值