Java系列 - 用Java8新特性进行Java开发太爽了
本人博客文章网址:https://www.peretang.com/using-java8s-new-features-to-coding-is-awesome/
前言
从开始写博客到现在已经过去3个月了. 并且保持着每周更新一次的规律. 这挺好的, 但是每次博客的文章的浏览量都好像不近乎人意.
某天, 一位同时开始写博客的朋友告诉我, 说我写的文章的结构太像政府机关发布通告的口吻, 看着会觉得无聊.
因此从这篇文章开始, 我会转型并使用一些随意点的口吻来试着写.
Java8新特性你了解吗?
与面向对象编程同一层次的函数式编程
简化代码的Lambda表达式
彻底改变集合使用方式的Stream API
代替Swing的JavaFX API
终于用上的时间/日期库java.time API
支持异步编程的CompletableFutures
让你的程序不在出现NullPointException的Optional
对一些对现有API进行增强
以上就是Java8的新特性, 而你有了解了多少呢?
改变你面向对象的思维改用函数式编程吧
使用了函数式编程的理念进行开发, 让所有的工作都变得简单, 让写的程序可以更好地进行维护.
相比如面向对象编程, 函数式编程更容易理解, 在逻辑上, 代码可理解上比面向对象编程高出太多.
所谓的函数式编程就是 一个方法, 接受零个到多个参数, 生成一个结果, 并且不会有任何副作用, 最好的理解便是, 把它当成一个黑盒, 它接受输入并参数输出, 其中还有一个最重要的概念, 便是当你用同一个参数进行多次调用, 它返回的结果永远是相同的.
Lambda表达式你真的吓到我了
或许很多人都像我一样, 一直避免去搞懂什么叫Lambda表达式, 但是相信我, 请务必尽快学会并精通, 然后你会发现你的代码犹如"诗歌"一般.
使用Lambda表达式, 第一个好处就是你可以把你代码中的匿名内部类全部去掉, 并且换上简单, 易懂的Lambda表达式.
今天就先到这吧, 让我的文字在脑海中在酝酿一下.
Pere Tang. 2am on July 9, 2017
Java系列 - 用Java8新特性进行Java开发太爽了的更多相关文章
- Java系列 – 用Java8新特性进行Java开发太爽了(续)
本人博客文章网址:https://www.peretang.com/using-java8s-new-features-to-coding-is-awesome-2/ 前言 上周, 我们谈论了关于Ja ...
- Java学习之==>Java8 新特性详解
一.简介 Java 8 已经发布很久了,很多报道表明Java 8 是一次重大的版本升级.Java 8是 Java 自 Java 5(发布于2004年)之后的最重要的版本.这个版本包含语言.编译器.库. ...
- Java基础之java8新特性(1)Lambda
一.接口的默认方法.static方法.default方法. 1.接口的默认方法 在Java8之前,Java中接口里面的默认方法都是public abstract 修饰的抽象方法,抽象方法并没有方法实体 ...
- 【Java基础】Java8 新特性
Java8 新特性 Lambda 表达式 Lambda 是一个匿名函数,我们可以把 Lambda 表达式理解为是一段可以传递的代码(将代码像数据一样进行传递).使用它可以写出更简洁.更灵活的代码. L ...
- java7和java8新特性
以下来至网址: http://blog.csdn.net/samjustin1/article/details/52268004 Java7 新特性 1.switch中可以使用字符串了 String ...
- 夯实Java基础系列21:Java8新特性终极指南
本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...
- 【Java学习笔记之二十八】深入了解Java8新特性
前言: Java8 已经发布很久了,很多报道表明java8 是一次重大的版本升级.在Java Code Geeks上已经有很多介绍Java 8新特性的文章,例如Playing with Java 8 ...
- Java基础20:Java8新特性终极指南
更多内容请关注微信公众号[Java技术江湖] 这是一位阿里 Java 工程师的技术小站,作者黄小斜,专注 Java 相关技术:SSM.SpringBoot.MySQL.分布式.中间件.集群.Linux ...
- 【Java】Java8新特性
文章目录 Java8新特性 Lambda表达式的使用 语法格式一:无参,无返回值 语法格式二:Lambda 需要一个参数,但是没有返回值. 语法格式三:数据类型可以省略,因为可由编译器推断得出,称为& ...
随机推荐
- Smart.coder每日站立会议08
站立会议内容: 完善小程序的查找功能,打算考虑一下信息自动输入分类的功能. 1.站立会议照片: 2.任务展板 3.燃尽图
- DelayQueue使用
假设现有如下的使用场景: a) 关闭空闲连接.服务器中,有很多客户端的连接,空闲一段时间之后需要关闭之. b) 缓存.缓存中的对象,超过了空闲时间,需要从缓存中移出. c) 任务超时处理.在网络协议滑 ...
- React复习小结(一)
一.React的发展 facebook在构建instagram网站的时候遇见两个问题: 1.数据绑定的时候,大量操作真实dom,性能成本太高 2.网站的数据流向太混乱,不好控制 于是facebook起 ...
- opencv基础到进阶(2)
本文为系列文章的第2篇,主要讲解对图像的像素的操作方法. 2.1存取像素值 为了存取矩阵元素,需要指定元素所在的行和列,程序会返回相应的元素.单通道图像返回单个数值,多通道图像,返回的则是一组向量(V ...
- C/C++遍历目录下的所有文件(Windows篇,超详细)
注: 1. 本文讨论的是怎么用Windows API遍历目录下的所有文件.除Windows API,还有一种Windows/Linux通用的方式,使用<io.h>. 2. 本文部分翻译自M ...
- apache和nginx支持SSI配置
今天发现了一种新的语言格式:.shtml 一. 前言 SSI是一种类似于ASP的基于服务器的网页制作技术.将内容发送到浏览器之前,可以使用"服务器端包含 (SSI)"指令将文本.图 ...
- JavaScript中对事件简单的理解(2)
事件(event) event对象 (1)什么是event对象? Event 对象代表事件的状态,比如事件在其中发生的元素.键盘按键的状态.鼠标的位置.鼠标按钮的状态.事件通常与函数结合使用,函数不会 ...
- CSS 简单了解(二)
我们第一天说了简单的HTML,第二天说了简单的CSS.那么今天.咱们就来说一说他们的结合如何使用吧! 首先说引用方式,和使用方法吧! 1.内部样式表.(放入<head>中) <hea ...
- NetCore WebSocket 即时通讯示例
1.新建Netcore Web项目 2.创建简易通讯协议 public class MsgTemplate { public string SenderID { get; set; } public ...
- JS事件及其兼容用法
JavaScript与HTML之间的交互是通过事件实现的.事件,就是文档或浏览器窗口中发生的一些特定的交互瞬间. 1.事件流:描述的是从页面中接收事件的顺序. IE提出的事件冒泡流:事件开始由最具体的 ...