AndroidStudio从2.1开始官方通过Jack支持Java8,从而使用Lambda等特性。 配置也很简单: android { ... compileOptions { sourceCompatibility J…
标签:java8
Java8-Stream API
了解Stream Java8中有两个最为重要的改变,一个是Lambda表达式,另一个就是Stream API,针对常见的集合数据处理,Stream API 提供了一种高效且易于使用的数据处理方式。 什么是Stream…
使用java8提供的stream api创建range
java的集合框架里没有range这个东西,大家都习惯于用三段式的for,鄙人用过其他的语言,觉得range确实是个不错的东西。 当然这个实现起来一点也不难,创建个list或array就行了,不过本文讲得是使用java8…
[java8]如何用函数式思想来解决树搜索
搜索树是一个常见的操作,可分成深度搜索和广度搜索。今天,本文将利用函数式开发思想,不使用递归而仅用java8的stream类实现深度搜索和广度搜索。(笔者建议,阅读本文前,需对java8中stream操作有基础性的了解。…
Java8(2):JDK 对字符串连接的改进
我们提出一个需求:有一个 List<String>,将其格式化为 元素1, 元素2, 元素3, … 元素N 的形式。毋庸置疑,Java8 之前我们的第一反应是使用 StringBuilder: p…
jvm系列(十一):Java 8-从持久代到metaspace
Java 8介绍了一些新语言以及运行时新特点。其中一个特点便是完全移除了持久代(PermGen),自从Oracle公司发布了JDK1.7后就已经宣布了这个决定。还有比如内部字符串,从JDK1.7开始就从持久代移除了,JD…
Java 与 iOS使用RSA 加密签名
RSA算法是一种非对称加密算法,常被用于加密数据传输.如果配合上数字摘要算法, 也可以用于文件签名. 本文将讨论如何在iOS中使用RSA传输加密数据. 本文环境 mac os openssl-1.0.1j, openss…
Java8-显示的Condition对象
先来看下例子 public class ConditionTest implements Runnable { private Lock lock; private Condition con; public Condi…
Java(1.8)集合类中的HashMap
Java(1.8)集合类中的HashMap Java(1.8) 集合中的LinkedList Java(1.8) 集合中的ArrayList Map接口没有继承任何其他接口,它存储的是Key-Value对,并且Key不能…
Java8刚刚普及,Java12即将发布,程序员吐槽学不动求慢一点
Java8刚普及,还没用上Java 11,Java12就要发布了。可能你会觉得这是一个无关紧要的问题,但对于那些需要在 JVM 中使用 Java 的开发者,或是比较看重 Java 新特性的开发者,每次更新都很期待了。 这…
Java8(2)Stream类
参考书籍:《Java 8函数式编程》 一. 四种最基本的函数式接口 使用Stream类进行流操作之前,先了解一下四种最基本的函数式接口(根据英文单词意思就可以理解其作用): Predicate<T> 接口:一…
java8-Lambda
1概述 Lambda 表达式的Java 实现:第一个是Lambda的自身,第二个是函数式接口。 Lambda 表现形式可以理解成一个匿名类。 Lambda表达式可以理解为一种匿名函数:它没有名称,但有参数列表、函数主体、…