转载自 JDK8之新特性扩展篇

BASE64

base64编码解码已经被加入到了jdk8中了。

import java.nio.charset.StandardCharsets;
import java.util.Base64;public class Base64Test {public static void main(String[] args) {String text = "hello javastack";String encoded = Base64.getEncoder().encodeToString(text.getBytes(StandardCharsets.UTF_8));System.out.println(encoded);String decoded = new String(Base64.getDecoder().decode(encoded), StandardCharsets.UTF_8);System.out.println(decoded);}
}

Date/Time API(JSR 310)

新的时间、日期。

Clock clock = Clock.systemUTC();
System.out.println(clock.instant());
System.out.println(clock.millis());

输出:

2017-09-06T07:26:18.541Z
1504682778593

可以代替 System.currentTimeMillis()方法。

另外,可以看下LocalDate、LocalTime、LocalDateTime、Duration的用法。

Nashorn JavaScript引擎

可以运行js代码的引擎。

ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("JavaScript");System.out.println(engine.getClass().getName());
System.out.println("Result:" + engine.eval("function f() { return 10; }; f() * 24;"));

输出:

  1. jdk.nashorn.api.scripting.NashornScriptEngine

  2. Result:240.0

JVM内存取消永久代

JDK8使用了Metaspace(JEP 122)替换永久代(PermGen space)。参数使用-XX:MetaSpaceSize和-XX:MaxMetaspaceSize代替原来的-XX:PermSize和-XX:MaxPermSize。

还有一些别的新特性,个人觉得某些新特性用处不是很大。

JDK8之新特性扩展篇相关推荐

  1. JDK 每半年就会更新一次新特性,再不掌握就要落伍了:JDK8 的新特性

    该图片由Alexandr Podvalny在Pixabay上发布 你好,我是看山. 本文收录在 <Java 进阶> 系列专栏中. 从 2017 年开始,JDK 版本更新策略从原来的每两年一 ...

  2. C# 10 新特性 —— 补充篇

    C# 10 新特性 -- 补充篇 Intro 前面已经写了几篇文章介绍 C# 10 新特性的文章,还有一些小的更新 Constant interpolated strings 在之前的版本中,如果想要 ...

  3. C# 9 新特性 —— 补充篇

    C# 9 新特性 -- 补充篇 Intro 前面我们分别介绍了一些 C# 9 中的新特性,还有一些我觉得需要了解一下的新特性,写一篇作为补充. Top-Level Statements 在以往的代码里 ...

  4. jdk8 接口新特性

    jdk8 接口新特性 概述: jdk8之前接口是规则的集合体,方法只有抽象方法. jdk8版本开始不光光有抽象方法同时增加了实体方法. 新加实体方法: 默认方法 静态方法 默认方法 概述: ​ 被关键 ...

  5. JDk8的新特性-流和内部iteration

    JDK8到今天已经出了好几年了  但是在公司能用到新特性的地方还是很少, 去年的时候当时项目老大要求我们用最新的写法来写Java 刚开始看到用stream写出来的代码一脸懵逼,内心就在想  这是Jav ...

  6. Java8新特性整理篇

    文章目录 概述 Lambda表达式 函数式(Functional)接口 Stream API Optional类 概述 Java 8是oracle公司于2014年3月发布,可以看成是自Java 5 以 ...

  7. 【JDK8语法新特性】:超全总结{lamda,stream,optional,新日期类API},JDK8对策略模式支持,可以直接贴代码运行测试。

    文章目录 Java8新特性 速度快 代码更少(增加了新的语法,lamda表达式)(主要) 强大的Stream API(主要) 便于并行 最大减少空指针异常(Optional API) 提供了线程安全的 ...

  8. 【jdk8的新特性】

    JDK1.8新特性 接口方法 接口中的属性默认有:static final 修饰符修饰: 定义的方法默认是抽象方法: 现在可以写默认方法: 由于JDK1.8的API,在已有的接口上,新增了很多的新方法 ...

  9. ES6 — ES11 新特性一篇通

    一.ES6 1.1.let 变量不能重复声明 有块级作用域 不存在变量提升(必须先声明后使用) 不影响作用域链 <script>//声明变量let a;let b, c, d;let e ...

最新文章

  1. Mysql 中,WEEK 与YEARWEEK函数的参数问题
  2. 50个比特怎么生成10个码元_你们最关心的42个计算机网络基础问答
  3. vtbl 什么时候被改写
  4. 冒泡排序详解--python
  5. maven仓库启用国内云的方法,含完整配置文件
  6. les有学计算机的吗,赵欢喜
  7. jenkins连接Linux
  8. 我精通Copula、CoVaR、GARCH、ARIMA、协整、VAR、DCC、BEKK、MES、SRISK、最优组合权重、模拟预测等模型
  9. js实现单元格合并和取消合并操作
  10. 【vue+cesium】加载三维天地图
  11. 单元测试中的 AAA 规则
  12. 时间序列预测方法最全总结!
  13. 计算机存储单位 KB,MB,GB,TB,PB
  14. 【Sass/SCSS】我花4小时整理了的Sass的函数
  15. java培训第二十二天总结 线程
  16. C#编写的串口调试软件,下位机传过来的中文全是问号???
  17. Python篇:用python画xy散点图
  18. 艾美捷FLIVO探针:用于细胞活体凋亡检测,助力科研!
  19. div浮动到另一个div上面或者浮动到img图片上面
  20. hive删除表或表信息出现的问题

热门文章

  1. [Java基础]反射获取成员方法并使用
  2. [C++11]智能指针简单介绍
  3. [蓝桥杯2018初赛]方格计数-巧妙枚举,找规,数论
  4. pycharm里面下载pip(不用去官网)
  5. 天梯赛 喊山 bfs
  6. P3804 【模板】后缀自动机 (SAM)
  7. Codeforces Round #598 (Div. 3) E. Yet Another Division Into Teams dp + 输出方案
  8. Educational Codeforces Round 101 (Rated for Div. 2) D. Ceil Divisions 思维 + 根号数
  9. Codeforces Round #736 (Div. 1Div2)
  10. CF1039C Network Safety