函数式编程-Stream流学习第一节

1 为什么学习

   1.现在很多公司在编程中大量使用函数式编程-Stream流格式代码,所以为了能够看懂公司的代码

  2.大量数据下处理集合效率高--因为有并行流

  3.代码可读性高

 4.消灭嵌套地狱

2 函数式编程思想

2.1 概念

  面向对象编程是关注于用对象完成什么事情。而函数式编程就像我们所学的数字中的函数。它关注的是对数据进行了什么样的处理

2.2 优点

  •   代码简洁,快速开发
  •   接近自然语言,容易理解
  •   易于‘并发编程’

3 Lambda表达式

3.1 概述

Lambda表达式是JDK1.8的一个语法糖,它可以对某些匿名内部类的语法进行简写。是函数式编程的一个重要体现,让我们不用关注是什么对象,而且关注于对数据进行了什么样的操作

3.2 练习

3.2.1 练习1

我们有个calculateNum方法,现在我们通过匿名内部类的方式实现 就是13行到19行的代码,然后Lambda表达式的简写格式是 ()->{}  ,()里面是参数,{}里面是具体的代码

这个时候我们就可以开始简写,简写完成后

 3.2.2 练习2

   有个printNum方法呢,我们也是通过匿名内部类的方式去实现,然后我们希望能够打印arr数组里面能被2整除的数也就是,13行到18行的代码,然后我们按照第一个案例的Lambda表达式的格式来

   

 简写完成后,并打印

3.2.3 偷懒

 当我们的代码可以通过lambda表达式来简写的时候,可以点击代码最右边的黄色区域,idea会自动帮我们简写,idea是不是很强大

4.省略规则

  • ()里面的参数类型可以不写
  • 方法体只有一句代码时,大括号和return和;可以简略不写
  • 方法只有一个参数时,()可以不写
  • 上面这3点记不住,可以省略不记

我们以例二为例子,它还可以简写成这个样

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值