# Java8Test **Repository Path**: xuhui_zhang/Java8Test ## Basic Information - **Project Name**: Java8Test - **Description**: jdk1.8新特性测试学习 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-06-21 - **Last Updated**: 2026-02-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 一、lambda表达式 ### 1、匿名函数 Lambda是一个匿名函数,可以理解为一段可以传递的代码(将代码像数据一样传递);可以写出更简洁、更灵活的代码;作为一种更紧凑的代码风格,使Java语言表达能力得到提升。 ### 2、匿名内部类 ```java /** * 匿名内部类 */ @Test public void test(){ Comparator com = new Comparator() { @Override public int compare(Integer o1, Integer o2) { return o1.compareTo(o2); } }; TreeSet tree = new TreeSet<>(com); } ``` ### 3、lambda表达式 ```java @Test public void test01(){ Comparator com = (o1,o2)->{ return o1.compareTo(o2); }; //Comparator com1 = (o1,o2)->o1.compareTo(o2); TreeSet tree = new TreeSet<>(com); } ``` ### 4、基础语法 #### 1、演变历程 垃圾代码 --> 策略模式 --> 匿名内部类 --> Lambda表达式 #### 2、语法格式 ```java /** * 无参数、无返回值 */ @Test public void test02(){ Runnable run = new Runnable(){ @Override public void run() { System.out.println("Good"); } }; new Thread(new Runnable() { @Override public void run() { System.out.println("Good"); } }).start(); Runnable r = ()-> System.out.println("Good"); new Thread(()-> System.out.println("Good")); ```