今天覆習的時候看到Java8的新特性,看到了Java也能夠使用lambda,原諒個人愚昧無知……java
因而本身也決定動手去試一下lambda表達式在Java中的應用,可是,在作一個很簡單的demo的時候,出現了一些編譯和運行的錯誤express
好比ide
一、這是個人源代碼spa
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();
}
二、而後會有編譯錯誤3d
錯誤描述code
Lambda expressions are not supported at language level '1.7'blog
可見是語言版本不符編譯器
而後去Project Structure 設置模塊的語言it
將框框裏的語言級別換成8 -lambda,type annotation etcio
此時編譯經過!
三、可是運行的時候出現錯誤
很明顯是Java版本不符,應該出如今編譯器那裏
繼續去到Project Structure那裏配置
首先確認您的電腦已經安裝了jdk1.8,不然先去官網下載安裝,而後配置就能夠了
四、運行成功