Java 各个版本中的新特性

新特性你知道多少?

  • Java 8
    • Lambda 表达式
    • 接口增加默认方法等
    • 方法引用
    • 流 Stream
  • Java 9
    • 模块系统
    • 交互式工具jshell
    • .of() 创建不可变集合
    • 接口支持私有方法
    • 更好的 Try-with-resource 体验
  • Java 10
    • 局部变量类型推断 var
  • Java 11
    • var 支持 Lambda
    • 标准化的 HTTP Client API

Java 8

Java 8 中主要的新特性有4个。

Lambda 表达式

Lambda 表达式允许将函数作为一个方法的参数,即把函数作为参数传递进方法中。

示例如下:

public class Lambda {
    public static void main(String[] args) {
        // 类型声明
        MathOperation addition = (int a, int b) -> a + b;
        // 不用声明类型
        MathOperation subtraction = (a, b) -> 0;
        // 大括号中的返回语句
        MathOperation multiplication = (int a, int b) -> { return a * b; };
        // 没有大括号及返回语句
        MathOperation division = (int a, int b) -> a / b;

        Lambda lambda = new Lambda();
        System.out.println(lambda.operate(1,2,addition));

    }

    interface MathOperation {
        int operation(int a, int b);
    }

    interface GrecetingService {
        void sayMessage(String message);
    }

    private int operate(int a, int b, MathOperation mathOperation) {
        return mathOperation.operation(a, b);

你可能感兴趣的:(Java,Java,新特性)