美文网首页
JAVA8新特性学习总结

JAVA8新特性学习总结

作者: rogn | 来源:发表于2019-07-29 15:20 被阅读0次
  • 函数式编程
  • Optional类
  • 日期时间API
  • Base64

一、函数式编程

函数式编程的基本理论不再讲述,说一下个人的理解,函数式编程的直接好处是代码层次的复用与抽象,使代码更简洁,复用度更高

以下实例完成一下对象的数据比较过程,对比非函数化编程与函数化编程的优缺点,期望对大家有所帮助。以下是对苹果重量进行排序的过程
1、创建一个Apple实体类:

public class Apple {
    private Integer weight; //重量
    private String color; //颜色

    public Apple(Integer weight, String color) {
        this.weight = weight;
        this.color = color;
    }

    public Integer getWeight() {
        return weight;
    }

    public void setWeight(Integer weight) {
        this.weight = weight;
    }

    public String getColor() {
        return color;
    }

    public void setColor(String color) {
        this.color = color;
    }

    @Override
    public String toString() {
        return "Apple{" +
                "weight=" + weight +
                ", color='" + color + '\'' +
                '}';
    }
}

2、JAVA7中的实现:

    @Test
    public void testJava7() {
        //创建苹果列表
        List<Apple> appleList = Arrays.asList(
                new Apple(36, "green")
                , new Apple(45, "red")
                , new Apple(89, "orange")
                , new Apple(102, "red")
                , new Apple(39, "green")
        );
        //排序前
        System.out.println(appleList);
        //排序
        appleList.sort(new Comparator<Apple>() {
            @Override
            public int compare(Apple o1, Apple o2) {
                return o1.getWeight().compareTo(o2.getWeight());
            }
        });
        //排序后
        System.out.println(appleList);
    }

3、JAVA8中实现排序

    @Test
    public void testJava8() {
        List<Apple> appleList = Arrays.asList(
                new Apple(36, "green")
                , new Apple(45, "red")
                , new Apple(89, "orange")
                , new Apple(102, "red")
                , new Apple(39, "green")
        );
        //排序前
        System.out.println(appleList);
        appleList.sort(Comparator.comparing(Apple::getWeight));
        //排序后
        System.out.println(appleList);
    }

// todo 20190729 未完待更.................

相关文章

  • Java8的几个重要特性介绍

    Java8的新特性有很多,只对代表性的四个重要特性做一次总结,方便以后回顾。 Java8的四个重要新特性: 1. ...

  • Java8常用的新特性总结

    一、Java8常用的新特性总结 1.1.Java8常用特性总览 1.2.lambda表达式 在Java8中引入了一...

  • JDK8 新特性学习笔记

    java8新特性学习 java8的特点 速度更快(修改了HasMap、HasSet、CurrentHasMap等存...

  • JAVA8新特性学习总结

    函数式编程 流 Optional类 日期时间API Base64 一、函数式编程 函数式编程的基本理论不再讲述,说...

  • java(java8新特性)

    java8新特性总结-1java8新特性总结-2体现在语言,类库,编译器,工具,运行时(JVM)五个方面 lamb...

  • Java发展历史

    Java8新特性:

  • Java8 新特性

    Java8新特性

  • 1.Java8你需要了解的

    一、Java8新增了哪些新特性: 新特性Java8 新增了非常多的特性,我们主要讨论以下几个: 1、接口默认方法:...

  • Java8极简手册-01

    为忙碌的程序员归纳总结和翻译的Java8极简教程,有助于快速了解Java8的新特性。 系列文章链接: Java8极...

  • Java 8 新特性

    Java 8 新特性 声明:java8新特性系列为个人学习笔记,参考地址点击这里,侵删!! Java 8 (又称为...

网友评论

      本文标题:JAVA8新特性学习总结

      本文链接:https://www.haomeiwen.com/subject/fapbrctx.html