java8
茅坤宝骏氹
语言:Java、C/C++、C#、Python、Linux Shell。
框架:Spring、Spring MVC、Spring Boot、Spring Cloud、Hibernate、Mybatis、Freemarker、Velocity。
前端:HTML5、CSS3、JavaScript、Bootstrap、JQuery、Vue、React。
数据库:oracle、mysql、MongoDB、HBase。
缓存:Memcache、Redis。
消息队列:kafka。
大数据:Hadoop、Hive、Sqoop、Flume、Spark、Strom、OpenTSDB、Druid。
展开
-
你还在Java8中使用循环语句吗?
转载自 你还在Java8中使用循环语句吗?Java 8中的新功能特性改变了游戏规则。对Java开发者来说这是一个全新的世界,并且是时候去适应它了。在这篇文章里,我们将会去了解传统循环的一些替代方案。在Java 8的新功能特性中,最棒的特性就是允许我们去表达我们想要完成什么,而不是要怎样做。这正是循环的不足之处。要确保循环的灵活性是需要付出代价的。return、break 或者 cont...转载 2018-09-28 19:12:54 · 327 阅读 · 0 评论 -
JDK8新特性之Lambda表达式
转载自 JDK8新特性之Lambda表达式什么是Lambda表达式Java 8的一个大亮点是引入Lambda表达式,使用它设计的代码会更加简洁。当开发者在编写Lambda表达式时,也会随之被编译成一个函数式接口。Lambda语法一行执行语句的写法:(parameters) -> expression如果有多行执行语句,可以加上 {}(parameters) -...转载 2018-04-28 09:52:43 · 248 阅读 · 1 评论 -
JDK8新特性之方法引用
转载自 JDK8新特性之方法引用什么是方法引用方法引用是只需要使用方法的名字,而具体调用交给函数式接口,需要和Lambda表达式配合使用。如:List<String> list = Arrays.asList("a","b","c");list.forEach(str -> System.out.print(str));list.forEach(System...转载 2018-04-28 09:52:56 · 220 阅读 · 0 评论 -
JDK8新特性之Optional
转载自 JDK8新特性之Optional Optional是什么java.util.OptionalJdk8提供 Optional,一个可以包含null值的容器对象,可以用来代替xx != null的判断。Optional常用方法ofpublic static <T> Optional<T> of(T value) { return n...转载 2018-04-28 09:54:28 · 286 阅读 · 0 评论 -
JDK8新特性之接口默认方法与静态方法
转载自 JDK8新特性之接口默认方法与静态方法接口默认方法与静态方法有这样一些场景,如果一个接口要添加一个方法,那所有的接口实现类都要去实现,而某些实现类根本就不需要实现这个方法也要写一个空实现,所以接口默认方法就是为了解决这个问题。接口静态方法类似于默认方法,但是我们不能在实现类中覆盖它们,可以避免默认方法在实现类中被覆盖实现。之前讲过的JDK8的list.foreache方法,...转载 2018-04-28 09:53:08 · 420 阅读 · 0 评论 -
跟我学 Java 8 新特性之 Stream 流(六)收集
转载自 跟我学 Java 8 新特性之 Stream 流(六)收集我们前面的五篇文章基本都是在说将一个集合转成一个流,然后对流进行操作,其实这种操作是最多的,但有时候我们也是需要从流中收集起一些元素,并以集合的方式返回,我们把这种反向操作称为收集。流API也给我们提供了相应的方法。如何在流中使用收集功能?我们先看一看流API给我们提供的方法:public interfac...转载 2018-10-08 19:39:31 · 286 阅读 · 0 评论 -
跟我学 Java 8 新特性之 Stream 流(五)映射
转载自 跟我学 Java 8 新特性之 Stream 流(五)映射经过了前面四篇文章的学习,相信大家对Stream流已经是相当的熟悉了,同时也掌握了一些高级功能了,如果你之前有阅读过集合框架的基石 Collection 接口,是不是在经过前面的学习,以前看不懂的东西,突然之间就恍然大悟了呢?今天我们的主角是Stream流里面的映射。由于之前,映射并没有再我们的Demo,例子中出现过,所...转载 2018-10-04 11:10:47 · 612 阅读 · 0 评论 -
跟我学 Java 8 新特性之 Stream 流(四)并行流
转载自 跟我学 Java 8 新特性之 Stream 流(四)并行流随着对流API认识的慢慢深入,本章我们要讨论的知识点是流API里面的并行流了。在开始讨论并行流之前,我先引发一下大家的思考,就你看到这篇文章的时间,你们是不是经常听到,Intel i7 CPU什么8核16线程,什么Android手机8核4GB这种消息,既然我们是处于一个多核处理器的时代,你们有没有想过并行地操作数组和集...转载 2018-10-04 11:15:50 · 398 阅读 · 0 评论 -
跟我学 Java 8 新特性之 Stream 流(三)缩减操作
转载自 跟我学 Java 8 新特性之 Stream 流(三)缩减操作和前面两篇文章一起服用,效果会更佳。通过对流API的基础体验Demo和关键知识点的讲解,相信大家对流API都有一定的认识了,但是流API强大的功能,可不仅仅像前面两篇文章中说的那样简单,大家应该注意到,在第二篇中,我对Stream接口进行介绍的时候,并没有把他的全部方法都进行了解析说明。没错,从这一篇开始,那些还没有...转载 2018-10-04 11:20:57 · 578 阅读 · 0 评论 -
跟我学 Java 8 新特性之 Stream 流(二)关键知识点
转载自 跟我学 Java 8 新特性之 Stream 流(二)关键知识点我们的第一篇文章,主要是通过一个Demo,让大家体验了一下使用流API的那种酣畅淋漓的感觉。如果你没有实践,我还是再次呼吁你动手敲一敲,自己实实在跑一遍上一篇的Demo。相信你的感受和理解也会随之加深的。继续探索流API的高级功能之前,我们先从接口级别全面了解一下流API,这个对于我们来说是至关重要的。接下来,我给...转载 2018-10-04 11:57:53 · 405 阅读 · 0 评论 -
跟我学 Java 8 新特性之 Stream 流基础体验
转载自 跟我学 Java 8 新特性之 Stream 流基础体验Java8新增的功能中,要数lambda表达式和流API最为重要了.这篇文章主要介绍流API的基础,也是流API系列的第一篇文章,话不多说,直奔主题.什么是流API? 它能做一些什么?我们应该知道(绝对知道~)API是一个程序向使用者提供的一些方法,通过这些方法就能实现某些功能.所以对于流API来说,重点是怎么理解"流...转载 2018-10-04 13:24:28 · 369 阅读 · 0 评论 -
Java 8的新特性—终极版
转载自 Java 8的新特性—终极版1. 简介毫无疑问,Java 8是Java自Java 5(发布于2004年)之后的最重要的版本。这个版本包含语言、编译器、库、工具和JVM等方面的十多个新特性。在本文中我们将学习这些新特性,并用实际的例子说明在什么场景下适合使用。这个教程包含Java开发者经常面对的几类问题: 语言 编译器 库 工具 运行...转载 2018-04-22 23:02:15 · 164 阅读 · 0 评论 -
使用Java 8 Stream像操作SQL一样处理数据(上)
转载自 使用Java 8 Stream像操作SQL一样处理数据(上) 几乎每个Java应用都要创建和处理集合。集合对于很多编程任务来说是一个很基本的需求。举个例子,在银行交易系统中你需要创建一个集合来存储用户的交易请求,然后你需要遍历整个集合才能找到这个客户这段时间总共花费了多少金额。尽管集合非常重要,但是在java中对集合的操作并不完美。首先,对一个集合处理的模式应该像执行SQL语言...转载 2018-04-15 21:23:23 · 4584 阅读 · 1 评论 -
Java 8 HashMap键与Comparable接口
转载自 Java 8 HashMap键与Comparable接口 这篇文章主要介绍了 Java 8 在 HashMap 哈希冲突处理方面的新特性。相对之前的版本,Java 8 在许多方面有了提升。其中有很多类被更新了,HashMap 作为最常使用的集合类之一也不例外。这篇文章将介绍 Java 8 中的 HashMap 在处理哈希冲突时的新特性。让我们从头开始。最容易使 HashMa...转载 2018-05-08 10:30:15 · 1022 阅读 · 0 评论 -
Java 8新特性探究(二)深入解析默认方法
转载自 Java 8新特性探究(二)深入解析默认方法 什么是默认方法,为什么要有默认方法简单说,就是接口可以有实现方法,而且不需要实现类去实现其方法。只需在方法名前面加个default关键字即可。为什么要有这个特性?首先,之前的接口是个双刃剑,好处是面向抽象而不是面向具体编程,缺陷是,当需要修改接口时候,需要修改全部实现该接口的类,目前的java 8之前的集合框架没有foreach...转载 2018-05-07 11:06:54 · 201 阅读 · 0 评论 -
Java 8新特性——default方法(defender方法)介绍
转载自 Java 8新特性——default方法(defender方法)介绍 我们都知道在Java语言的接口中只能定义方法名,而不能包含方法的具体实现代码。接口中定义的方法必须在接口的非抽象子类中实现。下面就是关于接口的一个例子: 1 2 3 4 5 6 7 8 9 10 11 12 ...转载 2018-05-06 14:36:44 · 432 阅读 · 0 评论 -
JDK8新特性之函数式接口
转载自 JDK8新特性之函数式接口什么是函数式接口先来看看传统的创建线程是怎么写的Thread t1 = new Thread(new Runnable() { @Override public void run() { System.out.println("t1"); }});t1.start();再来看看使用了函数式接口是怎么...转载 2018-05-03 09:40:31 · 201 阅读 · 0 评论 -
JDK8的排序大法!!
转载自 屌炸天,JDK8的排序大法!!今天总结了下JDK中排序的方法,包括JDK8中强大的lambda表达式及函数式接口运用,不废话,请看下面示例。public class Test { public static void main(String[] args) { List<User> list = initList(); /...转载 2018-05-03 09:40:16 · 4920 阅读 · 0 评论 -
JDK8新特性之Stream流
转载自 JDK8新特性之Stream流 是什么是Stream流java.util.stream.StreamStream流和传统的IO流,它们都叫流,却是两个完全不一样的概念和东西。流可以简单的说是处理数据集合的东西,可以申明式流式API来处理集合,而不是写一个逻辑实现。流分类流分为顺序流及并行流,顺序流即每个指令按顺序执行,并行流即集合里面的操作并行执行。...转载 2018-05-03 09:39:55 · 375 阅读 · 0 评论 -
通过实例理解 JDK8 的 CompletableFuture
转载自 通过实例理解 JDK8 的 CompletableFuture 前言Java 5 并发库主要关注于异步任务的处理,它采用了这样一种模式,producer 线程创建任务并且利用阻塞队列将其传递给任务的 consumer。这种模型在 Java 7 和 8 中进一步发展,并且开始支持另外一种风格的任务执行,那就是将任务的数据集分解为子集,每个子集都可以由独立且同质的子任务来负责处理。...转载 2018-05-01 08:50:10 · 8544 阅读 · 0 评论 -
JDK8之新特性扩展篇
转载自 JDK8之新特性扩展篇BASE64base64编码解码已经被加入到了jdk8中了。import java.nio.charset.StandardCharsets;import java.util.Base64;public class Base64Test { public static void main(String[] args) { S...转载 2018-04-28 09:54:49 · 195 阅读 · 0 评论 -
JDK8新特性之重复注解
转载自 JDK8新特性之重复注解什么是重复注解下面是JDK8中的重复注解( java.lang.annotation.Repeatable)定义的源码。@Documented@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.ANNOTATION_TYPE)public @interface Repeatable { ...转载 2018-04-28 09:54:39 · 244 阅读 · 0 评论 -
使用Java 8 Stream像操作SQL一样处理数据(下)
转载自 使用Java 8 Stream像操作SQL一样处理数据(下)在上一篇文章中,我们介绍了Stream可以像操作数据库一样来操作集合,但是我们没有介绍 flatMap 和 collect 操作。这两种操作对实现复杂的查询是非常有用的。比如你可以结果 flatMap 和 collect 计算stream中的单词的字符数,像下面代码那样。import static java.util.f...转载 2018-04-15 21:44:07 · 922 阅读 · 1 评论 -
Java8使用 Optional 处理 null
转载自 Java8(5):使用 Optional 处理 null写过 Java 程序的同学,一般都遇到过 NullPointerException :) —— 为了不抛出这个异常,我们便会写如下的代码:User user = getUserById(id);if (user != null) { String username = user.getUsername(); ...转载 2018-10-13 20:24:49 · 714 阅读 · 0 评论