今天复习的时候看到Java8的新特性,看到了Java也可以使用lambda,原谅我的愚昧无知……

于是自己也决定动手去试一下lambda表达式在Java中的应用,但是,在做一个很简单的demo的时候,出现了一些编译和运行的错误

比如

1、这是我的源代码

public class test1 {
public static void main(String[] args) {
//java8
new Thread(new Runnable() {
@Override
public void run() {
System.out.println("Before Java8, too much code for too little to do");
}
}).start();
//Java 8 方式:
new Thread( ()-> System.out.println("In Java8, Lambda expression rocks !!") ).start();
}

2、然后会有编译错误

错误描述

Lambda expressions are not supported at language level '1.7'

可见是语言版本不符

然后去Project Structure 设置模块的语言

将框框里的语言级别换成8 -lambda,type annotation etc

此时编译通过!

3、但是运行的时候出现错误

很明显是Java版本不符,应该出现在编译器那里

继续去到Project Structure那里配置

首先确认您的电脑已经安装了jdk1.8,否则先去官网下载安装,然后配置就可以了

4、运行成功

 

 

转载于:https://www.cnblogs.com/dudu-dubby/p/9413022.html

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐