网上找了一下,整理了贴出来。

下面是Java 1.7 里新出现的功能的一些用法例子:

对集合的支持

摒弃了 Java 集合接口的实现类,如: ArrayList 、 HashSet 和 HashMap 。而是直接采用 [] 、 {} 的形式存入对象,采用 [] 的形式按照索引、键值来获取集合中的对象,创建List / Set / Map 时写法更简单了。

List< String> list = ["item"];String item = list[0];Set< String > set = {"item"};Map< String,Integer > map = {"key" : 1};int value = map["key"];

对资源的自动回收管理

下面的代码看起来有点麻烦,不是吗?

BufferedReader br = new BufferedReader(new FileReader(path));try {   return br.readLine();} finally {   br.close();}

相信你一定会喜欢下面这种写法

        try (BufferedReader br = new BufferedReader(new FileReader(path)) {   return br.readLine();}

泛型实例创建过程中类型引用的简化

当声明你的对象的接口是,你肯定是不想重复指明泛型类型,看看下面的这种写法多好呀!

Map<String,String> hello = new Map<>();

在数字中使用下划线

        int billion = 1_000_000_000;

我不知道这个能有多少用处。

对字符串进行switch case

String availability = "available";switch(availability) { case "available":	//code	break;    case "unavailable":	//code	break;    case "merged":	//code    default:	//code	break;}

注意:在把字符串传进Switch case之前,别忘了检查字符串是否为null。

二进制符号

你可用作二进制字符前加上 0b 来创建一个二进制类型。

int binary = 0b1001_1001;

一个catch里捕捉多个异常类型

            try {//Here comes your code....} catch(IOException || NullPointerException || ..........) {}

如果有人能说出更多的新特征,那就更好了。我相信里面有更多的很酷的新东西。

上文是从 What’s Up in Java 1.7 这篇文章翻译而来,下文是另找的:

语法上支持集合,而不一定是数组

        final List piDigits = [ 1,2,3,4,5,8 ]; 

新增一些取环境信息的工具方法

File System.getJavaIoTempDir() // IO临时文件夹 File System.getJavaHomeDir() // JRE的安装目录 File System.getUserHomeDir() // 当前用户目录 File System.getUserDir() // 启动java进程时所在的目录 ....... 

Boolean类型反转,空指针安全,参与位运算

Boolean Booleans.negate(Boolean booleanObj) //True => False , False => True, Null => Null boolean Booleans.and(boolean[] array) boolean Booleans.or(boolean[] array) boolean Booleans.xor(boolean[] array) boolean Boolean...

------------------------------------------------------------------------------

1、对集合的支持:摒弃了 Java 集合接口的实现类,而是直接采用 [] 、 {} 的形式存入对象,采用 [] 的形式按照索引、键值来获取集合中的对象,创建List / Set / Map 时写法更简单了。
2、对资源的自动回收管理
3、泛型实例创建过程中类型引用的简化
4、对字符串进行switch case
5、在数字中使用下划线
6、二进制符号,你可用作二进制字符前加上 0b 来创建一个二进制类型。
7、一个catch里捕捉多个异常类型
8、语法上支持集合,而不一定是数组,如:final List piDigits = [ 1,2,3,4,5,8 ];
9、新增一些取环境信息的工具方法
10、Boolean类型反转,空指针安全,参与位运算
11、两个char间的equals
12、安全的加减乘除
13、希望对你有帮助!

(转载)Java 1.7的新特性的更多相关文章

  1. 使用示例带你提前了解 Java 9 中的新特性

    使用示例带你提前了解 Java 9 中的新特性 转载来源:https://juejin.im/post/58c5e402128fe100603cc194 英文出处:https://www.journa ...

  2. JAVA JDK1.5-1.9新特性

    1.51.自动装箱与拆箱:2.枚举(常用来设计单例模式)3.静态导入4.可变参数5.内省 1.61.Web服务元数据2.脚本语言支持3.JTable的排序和过滤4.更简单,更强大的JAX-WS5.轻量 ...

  3. Java 8 正式发布,新特性全搜罗

    经过2年半的努力.屡次的延期和9个里程碑版本,甲骨文的Java开发团队终于发布了Java 8正式版本. Java 8版本最大的改进就是Lambda表达式,其目的是使Java更易于为多核处理器编写代码: ...

  4. Java引入的一些新特性

    Java引入的一些新特性 Java 8 (又称为 jdk 1.8) 是 Java 语言开发的一个主要版本. Oracle 公司于 2014 年 3 月 18 日发布 Java 8 ,它支持函数式编程, ...

  5. Java学习之==>Java8 新特性详解

    一.简介 Java 8 已经发布很久了,很多报道表明Java 8 是一次重大的版本升级.Java 8是 Java 自 Java 5(发布于2004年)之后的最重要的版本.这个版本包含语言.编译器.库. ...

  6. JAVA笔记 之 JDK新特性

    JDK1.5新特性1.泛型(Generics) 为集合(collections)提供编译时类型安全,无需每刻从Collections取得一个对象就进行强制转换(cast) 2.增强的for循环(for ...

  7. Java系列 - 用Java8新特性进行Java开发太爽了

    本人博客文章网址:https://www.peretang.com/using-java8s-new-features-to-coding-is-awesome/ 前言 从开始写博客到现在已经过去3个 ...

  8. Java系列 – 用Java8新特性进行Java开发太爽了(续)

    本人博客文章网址:https://www.peretang.com/using-java8s-new-features-to-coding-is-awesome-2/ 前言 上周, 我们谈论了关于Ja ...

  9. Java各个版本的新特性

    原链接:http://blog.csdn.net/shareus/article/details/50736159 1.5 1.自动装箱与拆箱: 2.枚举(常用来设计单例模式) http://www. ...

随机推荐

  1. matlab操作之--读取指定文件夹下的“指定格式”文件

    %% 正负样本所在folder fext='*.png';%要读取的文件格式 positiveFolder='F:\课题\Crater detection\machingLearning\Positi ...

  2. babun,windows shell

    babun是windows上的一个第三方shell,在这个shell上面你可以使用几乎所有linux,unix上面的命令,他几乎可以取代windows的shell. babun的几个特点: 使用bab ...

  3. matplotlib 绘图

    http://blog.csdn.net/jkhere/article/details/9324823 都打一遍 5 matplotlib-绘制精美的图表 matplotlib 是python最著名的 ...

  4. jquery实现表格可变列宽插件开发

    工作中用到了表格的可变列宽,网上看了下,自己也实现了一个,整理贴记录. 测试环境chrome,ie8,firefox jquery版本1.8.2 原理:监听table第一行的mousemove事件,当 ...

  5. [BZOJ 1500] [NOI2005] 维修数列

    题目链接:BZOJ - 1500 题目分析 我要先说一下,这道题我写了一晚上,然后Debug了一整个白天..........再一次被自己的蒟蒻程度震惊= = 这道题是传说中的Splay维护数列的Bos ...

  6. 在iOS中创建静态库

    如果您有不错的原创或译文,欢迎提交给我们,更欢迎其他朋友加入我们的翻译小组(联系qq:2408167315).  =========================================== ...

  7. 【 UVALive - 2197】Paint the Roads(上下界费用流)

    Description In a country there are n cities connected by m one way roads. You can paint any of these ...

  8. KeilC51常用功能模块使用说明

    本文档包括单片机系统中常用到的时钟中断.通讯及键盘扫描等模块(见所附源程序)的说明.这些模块使用前后台系统模型.为达到最大的灵活性, 需要在用户工程中定义config.h文件, 在其中定义各模块可选参 ...

  9. NBU是最牛逼的备份软件

    NBU是最牛逼的备份软件 TSM是IBM的备份   好好看看几个厂商 VERITAS 公司下的NBU入门级备份有BEHP的备份软件有DPIBM的是TSMCommvault也非常牛逼这都是做到了小机AI ...

  10. Lua function 函数

    Lua支持面向对象,操作符为冒号‘:’.o:foo(x) <==> o.foo(o, x). Lua程序可以调用C语言或者Lua实现的函数.Lua基础库中的所有函数都是用C实现的.但这些细 ...