1. 程式人生 > >java8第一課:lambda表示式

java8第一課:lambda表示式

  這節課開始我們正式進入 java8 新特性

 

  首先要講的就是哦Lambda表示式(拉姆達表示式),lambda表示式就是一個匿名函式,也就是說沒有函式名。這個表示式的作用就一點: 簡化開發。

 

  語法(引數表)->{功能程式碼}

  lambda在java裡的唯一作用就是替代匿名內部類,要求是介面只有一個未實現的抽象方法

 

public class Teach01 {



    public static void main(String[] args) {

        List<String> strList = 
new ArrayList<>();         strList.add("asdad");         strList.add("ansdkanw");         strList.add("asb");         strList.add("asbsada");        
strList.add("asbqq");         strList.add("asbdddffg");         //下面來看看如何用lamda表示式簡化開發         /**          * 口訣:          * 照搬引數          * 加上右箭頭          * 大括號寫實現方法          */        
Filter<String> stringFilter = (List<String> list)->{             List<String> stringList = new ArrayList<>();             for (String s : list) {                 if (s.length() > 5)                 {                     stringList.add(s);                 }             }             return stringList;         };         List<String> strListAfterFilter = stringFilter.filter(strList);         for (String s : strListAfterFilter) {             System.out.println(s);         }     } } //過濾器 interface Filter<T>{     List<T> filter(List<T> list); }

 

 

public class Teach01 {



    public static void main(String[] args) {

        //介紹一個常用案例

        /**

         * Thread有一個構造器是最常用的:

         * public Thread(Runnable runnable,String name);

         *

         * Runnable是一個介面,裡面只有一個未實現的抽象方法void run();

         */

        Thread thread = new Thread(()->{

            //這裡面寫的其實就是原來run()方法的程式碼

            for (int i = 0; i < 10; i++) {

                System.out.println(i);

            }

        },"執行緒1");



        thread.start();

    }



}